org.apache.xbean
Class ClassLoading
java.lang.Object
org.apache.xbean.ClassLoading
- public class ClassLoading
- extends java.lang.Object
Utility class for loading classes by a variety of name variations.
Supported names types are:
1) Fully qualified class name (e.g., "java.lang.String", "org.apache.xbean.ClassLoading"
2) Method signature encoding ("Ljava.lang.String;", "J", "I", etc.)
3) Primitive type names ("int", "boolean", etc.)
4) Method array signature strings ("[I", "[Ljava.lang.String")
5) Arrays using Java code format ("int[]", "java.lang.String[][]")
The classes are loaded using the provided class loader. For the basic types, the primitive
reflection types are returned.
- Version:
- $Rev: 6685 $
Method Summary |
static java.lang.String |
getClassName(java.lang.Class type)
Map a class object back to a class name. |
static java.lang.String |
getClassName(java.lang.Class type,
boolean pretty)
|
static java.lang.String |
getClassName(java.lang.Object instance)
|
static java.lang.String |
getClassName(java.lang.Object instance,
boolean pretty)
|
static java.lang.Class |
loadClass(java.lang.String className,
java.lang.ClassLoader classLoader)
Load a class that matches the requested name, using the provided class loader context. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ClassLoading
public ClassLoading()
loadClass
public static java.lang.Class loadClass(java.lang.String className,
java.lang.ClassLoader classLoader)
throws java.lang.ClassNotFoundException
- Load a class that matches the requested name, using the provided class loader context.
The class name may be a standard class name, the name of a primitive type Java
reflection class (e.g., "boolean" or "int"), or a type in method type signature
encoding. Array classes in either encoding form are also processed.
- Parameters:
className
- The name of the required class.classLoader
- The class loader used to resolve the class object.
- Returns:
- The Class object resolved from "className".
- Throws:
java.lang.ClassNotFoundException
- When unable to resolve the class object.
java.lang.IllegalArgumentException
- If either argument is null.
getClassName
public static java.lang.String getClassName(java.lang.Class type)
- Map a class object back to a class name. The returned class object
must be "round trippable", which means
type == ClassLoading.loadClass(ClassLoading.getClassName(type), classLoader)
must be true. To ensure this, the class name is always returned in
method signature format.
- Parameters:
type
- The class object we convert into name form.
- Returns:
- A string representation of the class name, in method signature
format.
getClassName
public static java.lang.String getClassName(java.lang.Object instance)
getClassName
public static java.lang.String getClassName(java.lang.Object instance,
boolean pretty)
getClassName
public static java.lang.String getClassName(java.lang.Class type,
boolean pretty)
Copyright © {inceptionYear}-2006 Apache Software Foundation. All Rights Reserved.