org.jfree.util
Class ObjectUtilities
java.lang.Object
org.jfree.util.ObjectUtilities
A collection of useful static utility methods for handling classes and object
instantiation.
static String | CLASS_CONTEXT - A constant for using the ClassContext as source for the classloader.
|
static String | THREAD_CONTEXT - A constant for using the TheadContext as source for the classloader.
|
static Object | clone(Object object) - Returns a clone of the specified object, if it can be cloned, otherwise
throws a CloneNotSupportedException.
|
static Collection | deepClone(Collection collection) - Returns a new collection containing clones of all the items in the
specified collection.
|
static boolean | equal(Object o1, Object o2) - Returns
true if the two objects are equal OR both
null .
|
static ClassLoader | getClassLoader() - Returns the custom classloader or null, if no custom classloader is defined.
|
static ClassLoader | getClassLoader(Class c) - Returns the classloader, which was responsible for loading the given
class.
|
static String | getClassLoaderSource() - Returns the internal configuration entry, whether the classloader of
the thread context or the context classloader should be used.
|
static URL | getResource(String name, Class c) - Returns the resource specified by the absolute name.
|
static InputStream | getResourceAsStream(String name, Class context) - Returns the inputstream for the resource specified by the
absolute name.
|
static URL | getResourceRelative(String name, Class c) - Returns the resource specified by the relative name.
|
static InputStream | getResourceRelativeAsStream(String name, Class context) - Returns the inputstream for the resource specified by the
relative name.
|
static int | hashCode(Object object) - Returns a hash code for an object, or zero if the object is
null .
|
static boolean | isJDK14()
|
static Object | loadAndInstantiate(String className, Class source) - Tries to create a new instance of the given class.
|
static void | setClassLoader(ClassLoader classLoader) - Redefines the custom classloader.
|
static void | setClassLoaderSource(String classLoaderSource) - Defines the internal configuration entry, whether the classloader of
the thread context or the context classloader should be used.
|
CLASS_CONTEXT
public static final String CLASS_CONTEXT
A constant for using the ClassContext as source for the classloader.
THREAD_CONTEXT
public static final String THREAD_CONTEXT
A constant for using the TheadContext as source for the classloader.
clone
public static Object clone(Object object)
throws CloneNotSupportedException
Returns a clone of the specified object, if it can be cloned, otherwise
throws a CloneNotSupportedException.
object
- the object to clone (null
not permitted).
- A clone of the specified object.
deepClone
public static Collection deepClone(Collection collection)
throws CloneNotSupportedException
Returns a new collection containing clones of all the items in the
specified collection.
collection
- the collection (null
not permitted).
- A new collection containing clones of all the items in the
specified collection.
equal
public static boolean equal(Object o1,
Object o2)
Returns true
if the two objects are equal OR both
null
.
o1
- object 1 (null
permitted).o2
- object 2 (null
permitted).
getClassLoader
public static ClassLoader getClassLoader()
Returns the custom classloader or null, if no custom classloader is defined.
- the custom classloader or null to use the default.
getClassLoader
public static ClassLoader getClassLoader(Class c)
Returns the classloader, which was responsible for loading the given
class.
c
- the classloader, either an application class loader or the
boot loader.
- the classloader, never null.
getClassLoaderSource
public static String getClassLoaderSource()
Returns the internal configuration entry, whether the classloader of
the thread context or the context classloader should be used.
- the classloader source, either THREAD_CONTEXT or CLASS_CONTEXT.
getResource
public static URL getResource(String name,
Class c)
Returns the resource specified by the absolute name.
name
- the name of the resourcec
- the source class
- the url of the resource or null, if not found.
getResourceAsStream
public static InputStream getResourceAsStream(String name,
Class context)
Returns the inputstream for the resource specified by the
absolute name.
name
- the name of the resourcecontext
- the source class
- the url of the resource or null, if not found.
getResourceRelative
public static URL getResourceRelative(String name,
Class c)
Returns the resource specified by the relative name.
name
- the name of the resource relative to the given classc
- the source class
- the url of the resource or null, if not found.
getResourceRelativeAsStream
public static InputStream getResourceRelativeAsStream(String name,
Class context)
Returns the inputstream for the resource specified by the
relative name.
name
- the name of the resource relative to the given classcontext
- the source class
- the url of the resource or null, if not found.
hashCode
public static int hashCode(Object object)
Returns a hash code for an object, or zero if the object is
null
.
object
- the object (null
permitted).
- The object's hash code (or zero if the object is
null
).
isJDK14
public static boolean isJDK14()
loadAndInstantiate
public static Object loadAndInstantiate(String className,
Class source)
Tries to create a new instance of the given class. This is a short cut
for the common bean instantiation code.
className
- the class name as String, never null.source
- the source class, from where to get the classloader.
- the instantiated object or null, if an error occured.
setClassLoader
public static void setClassLoader(ClassLoader classLoader)
Redefines the custom classloader.
classLoader
- the new classloader or null to use the default.
setClassLoaderSource
public static void setClassLoaderSource(String classLoaderSource)
Defines the internal configuration entry, whether the classloader of
the thread context or the context classloader should be used.
This setting can only be defined using the API, there is no safe way
to put this into an external configuration file.
classLoaderSource
- the classloader source,
either THREAD_CONTEXT or CLASS_CONTEXT.