public final class ClassLoading extends Object
RMIClassLoader with optional
verification that the codebase URLs used to load classes provide content integrity (see Security.verifyCodebaseIntegrity).| Modifier and Type | Method and Description |
|---|---|
static Class |
loadClass(String codebase,
String name,
ClassLoader defaultLoader,
boolean verifyCodebaseIntegrity,
ClassLoader verifierLoader)
Loads a class using
RMIClassLoader.loadClass, optionally verifying that the codebase URLs provide content
integrity. |
static Class |
loadProxyClass(String codebase,
String[] interfaceNames,
ClassLoader defaultLoader,
boolean verifyCodebaseIntegrity,
ClassLoader verifierLoader)
Loads a dynamic proxy class using
RMIClassLoader.loadProxyClass, optionally verifying that the codebase URLs
provide content integrity. |
public static Class loadClass(String codebase, String name, ClassLoader defaultLoader, boolean verifyCodebaseIntegrity, ClassLoader verifierLoader) throws MalformedURLException, ClassNotFoundException
RMIClassLoader.loadClass, optionally verifying that the codebase URLs provide content
integrity.
If verifyCodebaseIntegrity is true and codebase is
not null, then this method invokes Security.verifyCodebaseIntegrity with codebase as the first argument and
verifierLoader as the second argument (this invocation may be skipped if a
previous invocation of this method or loadProxyClass has already
invoked Security.verifyCodebaseIntegrity with the same value of
codebase and the same effective value of verifierLoader as
arguments without it throwing an exception). If Security.verifyCodebaseIntegrity
throws a SecurityException, then this method proceeds as if
codebase were null. If Security.verifyCodebaseIntegrity
throws any other exception, then this method throws that exception.
This method then invokes RMIClassLoader.loadClass with codebase as the first argument (or
null if in the previous step Security.verifyCodebaseIntegrity was
invoked and it threw a SecurityException), name as the second
argument, and defaultLoader as the third argument. If
RMIClassLoader.loadClass throws a ClassNotFoundException, then this
method throws a ClassNotFoundException; if RMIClassLoader.loadClass
throws any other exception, then this method throws that exception; otherwise, this method
returns the Class returned by RMIClassLoader.loadClass.
codebase - the list of URLs (separated by spaces) to load the class from,
or nullname - the name of the class to loaddefaultLoader - the class loader value (possibly null) to pass as
the defaultLoader argument to
RMIClassLoader.loadClassverifyCodebaseIntegrity - if true, verify that the codebase URLs provide
content integrityverifierLoader - the class loader value (possibly null) to pass to
Security.verifyCodebaseIntegrity, if
verifyCodebaseIntegrity is trueClass object representing the loaded classMalformedURLException - if Security.verifyCodebaseIntegrity or
RMIClassLoader.loadClass throws a
MalformedURLExceptionClassNotFoundException - if RMIClassLoader.loadClass throws a
ClassNotFoundExceptionNullPointerException - if name is nullpublic static Class loadProxyClass(String codebase, String[] interfaceNames, ClassLoader defaultLoader, boolean verifyCodebaseIntegrity, ClassLoader verifierLoader) throws MalformedURLException, ClassNotFoundException
RMIClassLoader.loadProxyClass, optionally verifying that the codebase URLs
provide content integrity.
If verifyCodebaseIntegrity is true and codebase is
not null, then this method invokes Security.verifyCodebaseIntegrity with codebase as the first argument and
verifierLoader as the second argument (this invocation may be skipped if a
previous invocation of this method or loadClass has already invoked
Security.verifyCodebaseIntegrity with the same value of codebase
and the same effective value of verifierLoader as arguments without it throwing
an exception). If Security.verifyCodebaseIntegrity throws a
SecurityException, then this method proceeds as if codebase were
null. If Security.verifyCodebaseIntegrity throws any other
exception, then this method throws that exception.
This method invokes RMIClassLoader.loadProxyClass with codebase as the first argument (or
null if in the previous step Security.verifyCodebaseIntegrity was
invoked and it threw a SecurityException), interfaceNames as the
second argument, and defaultLoader as the third argument. If
RMIClassLoader.loadProxyClass throws a ClassNotFoundException, then
this method throws a ClassNotFoundException; if RMIClassLoader.loadProxyClass
throws any other exception, then this method throws that exception; otherwise, this method
returns the Class returned by RMIClassLoader.loadProxyClass.
codebase - the list of URLs (separated by spaces) to load classes from,
or nullinterfaceNames - the names of the interfaces for the proxy class to implementdefaultLoader - the class loader value (possibly null) to pass as
the defaultLoader argument to
RMIClassLoader.loadProxyClassverifyCodebaseIntegrity - if true, verify that the codebase URLs provide
content integrityverifierLoader - the class loader value (possibly null) to pass to
Security.verifyCodebaseIntegrity, if
verifyCodebaseIntegrity is trueClass object representing the loaded dynamic proxy classMalformedURLException - if Security.verifyCodebaseIntegrity or
RMIClassLoader.loadProxyClass throws a
MalformedURLExceptionClassNotFoundException - if RMIClassLoader.loadProxyClass throws a
ClassNotFoundExceptionNullPointerException - if interfaceNames is null or if any
element of interfaceNames is nullCopyright © GigaSpaces.