public final class ObjectUtilities extends Object
Modifier and Type | Field and Description |
---|---|
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.
|
Modifier and Type | Method and Description |
---|---|
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()
Returns
true if this is version 1.4 or later of the
Java runtime. |
static Object |
loadAndInstantiate(String className,
Class source)
Tries to create a new instance of the given class.
|
static Object |
loadAndInstantiate(String className,
Class source,
Class type)
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.
|
public static final String THREAD_CONTEXT
public static final String CLASS_CONTEXT
public static String getClassLoaderSource()
public static void setClassLoaderSource(String classLoaderSource)
classLoaderSource
- the classloader source,
either THREAD_CONTEXT or CLASS_CONTEXT.public static boolean equal(Object o1, Object o2)
true
if the two objects are equal OR both
null
.o1
- object 1 (null
permitted).o2
- object 2 (null
permitted).true
or false
.public static int hashCode(Object object)
null
.object
- the object (null
permitted).null
).public static Object clone(Object object) throws CloneNotSupportedException
object
- the object to clone (null
not permitted).CloneNotSupportedException
- if the object cannot be cloned.public static Collection deepClone(Collection collection) throws CloneNotSupportedException
collection
- the collection (null
not permitted).CloneNotSupportedException
- if any of the items in the collection
cannot be cloned.public static void setClassLoader(ClassLoader classLoader)
classLoader
- the new classloader or null to use the default.public static ClassLoader getClassLoader()
public static ClassLoader getClassLoader(Class c)
c
- the classloader, either an application class loader or the
boot loader.SecurityException
- if the SecurityManager does not allow to grab
the context classloader.public static URL getResource(String name, Class c)
name
- the name of the resourcec
- the source classpublic static URL getResourceRelative(String name, Class c)
name
- the name of the resource relative to the given classc
- the source classpublic static InputStream getResourceAsStream(String name, Class context)
name
- the name of the resourcecontext
- the source classpublic static InputStream getResourceRelativeAsStream(String name, Class context)
name
- the name of the resource relative to the given classcontext
- the source classpublic static Object loadAndInstantiate(String className, Class source)
className
- the class name as String, never null.source
- the source class, from where to get the classloader.public static Object loadAndInstantiate(String className, Class source, Class type)
className
- the class name as String, never null.source
- the source class, from where to get the classloader.type
- the type.public static boolean isJDK14()
true
if this is version 1.4 or later of the
Java runtime.