com.sleepycat.util
Class ClassResolver
java.lang.Object
com.sleepycat.util.ClassResolver
public class ClassResolver
- extends Object
Implements policies for loading user-supplied classes. The resolveClass(java.lang.String, java.lang.ClassLoader)
method should be used to load all user-supplied classes, and
the ClassResolver.Stream
class should be used as a replacement for
ObjectInputStream to deserialize instances of user-supplied classes.
The ClassLoader specified as a param should be the one configured using
EnvironmentConfig.setClassLoader. This loader is used, if non-null. If the
loader param is null, but a non-null thread-context loader is available, the
latter is used. If the loader param and thread-context loader are both
null, or if they fail to load a class by throwing ClassNotFoundException,
then the default Java mechanisms for determining the class loader are used.
Nested Class Summary |
static class |
ClassResolver.Stream
A specialized ObjectInputStream that supports use of a user-specified
ClassLoader. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ClassResolver
public ClassResolver()
resolveClass
public static Class resolveClass(String className,
ClassLoader classLoader)
throws ClassNotFoundException
- A specialized Class.forName method that supports use of a user-specified
ClassLoader.
If the loader param and thread-context loader are both null, of if they
throw ClassNotFoundException, then Class.forName is called and the
"current loader" (the one used to load JE) will be used.
- Throws:
ClassNotFoundException
Copyright (c) 1996, 2012 Oracle and/or its affiliates. All rights reserved.