|
JBoss Reflection 2.2.1.SP1 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.jboss.util.JBossObject
org.jboss.reflect.plugins.AbstractAnnotatedInfo
org.jboss.reflect.plugins.javassist.JavassistAnnotatedInfo
org.jboss.reflect.plugins.javassist.JavassistInheritableAnnotationHolder
org.jboss.reflect.plugins.javassist.JavassistTypeInfo
public class JavassistTypeInfo
JavassistTypeInfo.
| Nested Class Summary | |
|---|---|
static class |
JavassistTypeInfo.MarshalledClassInfo
|
| Field Summary | |
|---|---|
protected static RuntimePermission |
GET_CLASSLOADER_PERMISSION
The get classloader permission |
| Fields inherited from class org.jboss.reflect.plugins.javassist.JavassistInheritableAnnotationHolder |
|---|
allAnnotations, allAnnotationsArray, ctClass, initialized |
| Fields inherited from class org.jboss.reflect.plugins.javassist.JavassistAnnotatedInfo |
|---|
annotationHelper, annotationMap, annotationsArray |
| Fields inherited from class org.jboss.util.JBossObject |
|---|
hashCode, log, toString |
| Fields inherited from interface org.jboss.reflect.spi.ModifierInfo |
|---|
ABSTRACT, CONSTANT, FINAL, PACKAGE, PACKAGE_ABSTRACT, PACKAGE_CONSTANT, PACKAGE_STATIC, PRIVATE, PRIVATE_CONSTANT, PRIVATE_STATIC, PROTECTED, PROTECTED_ABSTRACT, PROTECTED_CONSTANT, PROTECTED_STATIC, PUBLIC, PUBLIC_ABSTRACT, PUBLIC_CONSTANT, PUBLIC_STATIC, STATIC |
| Method Summary | ||
|---|---|---|
void |
addConstructor(MutableConstructorInfo mci)
Add a constructor |
|
void |
addField(MutableFieldInfo mfi)
Add a field |
|
void |
addMethod(MutableMethodInfo mmi)
Add a method |
|
protected void |
clearConstructorCache()
|
|
protected void |
clearFieldCache()
|
|
protected void |
clearMethodCache()
|
|
Object |
convertValue(Object value)
Convert a value |
|
Object |
convertValue(Object value,
boolean replaceProperties)
Convert a value |
|
Object |
convertValue(Object value,
boolean replaceProperties,
boolean trim)
Convert a value |
|
MutableConstructorInfo |
createMutableConstructor(Body body)
Compiles the code included in the Body parameter and returns a MutableConstructorInfo representation of it. |
|
MutableConstructorInfo |
createMutableConstructor(int modifiers,
Body body,
ClassInfo[] parameters,
ClassInfo[] exceptions)
Creates a constructor with the parameters given. |
|
MutableConstructorInfo |
createMutableConstructor(int modifiers,
Body body,
String[] parameters,
String[] exceptions)
Creates a constructor with the parameters given. |
|
MutableConstructorInfo |
createMutableConstructor(int modifiers,
ClassInfo[] parameters,
ClassInfo[] exceptions)
Creates an empty constructor with the parameters given. |
|
MutableConstructorInfo |
createMutableConstructor(int modifiers,
String[] parameters,
String[] exceptions)
Creates an empty constructor with parameters given. |
|
MutableFieldInfo |
createMutableField(int modifiers,
ClassInfo type,
String fieldName)
Creates a field connected to this class with the parameters given. |
|
MutableFieldInfo |
createMutableField(int modifiers,
String type,
String fieldName)
Creates a field connected to this class with the parameters given. |
|
MutableMethodInfo |
createMutableMethod(Body body)
Compiles the code included in Body and returns a MutableMethodInfo representation of it. |
|
MutableMethodInfo |
createMutableMethod(int modifiers,
ClassInfo returnType,
String methodName,
Body body,
ClassInfo[] parameters,
ClassInfo[] exceptions)
Compiles a method with the signature and body given by the parameters. |
|
MutableMethodInfo |
createMutableMethod(int modifiers,
ClassInfo returnType,
String methodName,
ClassInfo[] parameters,
ClassInfo[] exceptions)
Compiles an empty method with the signature given by the parameters. |
|
MutableMethodInfo |
createMutableMethod(int modifiers,
String returnType,
String methodName,
Body body,
String[] parameters,
String[] exceptions)
Compiles a method with the signature and body given by the parameters. |
|
MutableMethodInfo |
createMutableMethod(int modifiers,
String returnType,
String methodName,
String[] parameters,
String[] exceptions)
Compiles an empty method with the signature given by the parameters. |
|
boolean |
equals(Object obj)
|
|
protected MutableConstructorInfo |
generateConstructorInfo(javassist.CtConstructor constructor)
Generate constructor info |
|
protected MutableConstructorInfo |
generateConstructorInfo(SignatureKey key)
Generate constructor info |
|
protected MutableFieldInfo |
generateFieldInfo(javassist.CtField field)
Generate field info |
|
protected MutableMethodInfo |
generateMethodInfo(javassist.CtMethod method)
Generate method info |
|
protected MutableMethodInfo |
generateMethodInfo(SignatureKey key)
Generate method info |
|
protected MutableMethodInfo |
generateMethodInfo(SignatureKey key,
javassist.CtMethod method)
Generate method info |
|
TypeInfo[] |
getActualTypeArguments()
Get the actual type parameters |
|
protected Object |
getAnnotatedTarget()
|
|
AnnotationValue[] |
getAnnotations()
Get the annotations |
|
static Class<?> |
getArrayClass(Class<?> clazz)
Get an array class |
|
TypeInfo |
getArrayType()
Get an array type |
|
|
getAttachment(Class<T> expectedType)
Get an attachment from the type, uses the expected type as both the name and to cast the resulting object. |
|
Object |
getAttachment(String attachmentName)
Get an attachment from the type |
|
ClassLoader |
getClassLoader()
Get the classloader for this class info. |
|
ClassLoader |
getClassLoaderInternal()
|
|
javassist.bytecode.SignatureAttribute.ClassSignature |
getClassSignature()
|
|
TypeInfo |
getComponentType()
Get the component type if it is a collection or an array |
|
MutableConstructorInfo |
getDeclaredConstructor()
Gets the default constructor (parameterless) |
|
MutableConstructorInfo |
getDeclaredConstructor(String... parameters)
Get a declared constructor Note: the parameters will be loaded with the classloader defined in TypeInfoFactory. |
|
MutableConstructorInfo |
getDeclaredConstructor(TypeInfo... parameters)
Get a declared constructor |
|
MutableConstructorInfo[] |
getDeclaredConstructors()
Get the declared constructors |
|
MutableFieldInfo |
getDeclaredField(String fieldName)
Get the declared field |
|
MutableFieldInfo[] |
getDeclaredFields()
Get the declared fields |
|
MutableMethodInfo |
getDeclaredMethod(String methodName)
Get the declared method without parameters. |
|
MutableMethodInfo |
getDeclaredMethod(String methodName,
String... parameters)
Get the declared method Note: the parameters will be loaded with the classloader defined in TypeInfoFactory. |
|
MutableMethodInfo |
getDeclaredMethod(String methodName,
TypeInfo... parameters)
Get the declared method |
|
MutableMethodInfo[] |
getDeclaredMethods()
Get the declared methods |
|
JavassistTypeInfoFactoryImpl |
getFactory()
Get the factory |
|
InterfaceInfo[] |
getGenericInterfaces()
Get the generic interfaces |
|
ClassInfo |
getGenericSuperclass()
Get the generic super class |
|
protected int |
getHashCode()
|
|
InterfaceInfo[] |
getInterfaces()
Get the interfaces |
|
TypeInfo |
getKeyType()
Get the key type if it is a map |
|
int |
getModifiers()
Get the modifiers |
|
String |
getName()
Get the class name |
|
TypeInfo |
getOwnerType()
Get the owner type |
|
PackageInfo |
getPackage()
Get the package |
|
protected javassist.CtClass[] |
getParameterTypes(SignatureKey key)
Get the parameter types |
|
ClassInfo |
getRawType()
Get the raw type |
|
String |
getSimpleName()
Get the simple name |
|
ClassInfo |
getSuperclass()
Get the super class |
|
ClassInfo |
getSuperHolder()
|
|
Class<? extends Object> |
getType()
Deprecated. |
|
TypeInfoFactory |
getTypeInfoFactory()
Get the TypeInfoFactory that created this type info |
|
String |
getTypeVariable()
Gets the type variable if we are a parameterized type which is part of a parameterized type and there is a type variable for this type. |
|
TypeInfo |
getValueType()
Get the value type if it is a map |
|
boolean |
isAnnotation()
Whether this type is an annotation |
|
boolean |
isArray()
Whether this type is an array |
|
boolean |
isAssignableFrom(TypeInfo info)
Mostly using |
|
boolean |
isCollection()
Whether this type is a collection |
|
boolean |
isEnum()
Whether this type is an enum |
|
boolean |
isInstance(Object object)
Is object instance of this type info. |
|
boolean |
isInterface()
Whether it is an interface |
|
boolean |
isMap()
Whether this type is a map |
|
boolean |
isPrimitive()
Whether this type is a primitive |
|
boolean |
isPublic()
|
|
boolean |
isStatic()
Whether it is static |
|
boolean |
isVolatile()
Whether it is volatile |
|
Object |
newArrayInstance(int size)
Create a new array |
|
void |
removeConstructor(MutableConstructorInfo mci)
Remove the specified constructor from this class |
|
void |
removeField(MutableFieldInfo mfi)
Remove a field |
|
void |
removeMethod(MutableMethodInfo mmi)
Remove the specified method from this class |
|
void |
setAttachment(String name,
Object attachment)
Set an attachment against the type. |
|
byte[] |
toByteCode()
Converts the class to a Class file. |
|
void |
toShortString(org.jboss.util.JBossStringBuilder buffer)
|
|
protected void |
toString(org.jboss.util.JBossStringBuilder buffer)
|
|
protected Object |
writeReplace()
|
|
| Methods inherited from class org.jboss.reflect.plugins.javassist.JavassistInheritableAnnotationHolder |
|---|
getAllAnnotations, getAnnotation, getAnnotations, isAnnotationPresent, setupAnnotations |
| Methods inherited from class org.jboss.reflect.plugins.AbstractAnnotatedInfo |
|---|
getUnderlyingAnnotation, getUnderlyingAnnotations, isAnnotationPresent |
| Methods inherited from class org.jboss.util.JBossObject |
|---|
cacheGetHashCode, cacheToString, clone, equals, flushJBossObjectCache, getClassShortName, hashCode, list, notEqual, toShortString, toString, toStringImplementation |
| Methods inherited from class java.lang.Object |
|---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.jboss.reflect.spi.AnnotatedInfo |
|---|
getAnnotation, getUnderlyingAnnotation, getUnderlyingAnnotations, isAnnotationPresent, isAnnotationPresent |
| Methods inherited from interface org.jboss.util.JBossInterface |
|---|
clone, toShortString |
| Field Detail |
|---|
protected static final RuntimePermission GET_CLASSLOADER_PERMISSION
| Method Detail |
|---|
public String getName()
ClassInfo
getName in interface ClassInfogetName in interface TypeInfopublic boolean isInterface()
ClassInfo
isInterface in interface ClassInfopublic String getSimpleName()
TypeInfo
getSimpleName in interface TypeInfopublic int getModifiers()
ModifierInfo
getModifiers in interface ModifierInfopublic boolean isPublic()
isPublic in interface ModifierInfopublic boolean isStatic()
ModifierInfo
isStatic in interface ModifierInfopublic boolean isVolatile()
ModifierInfo
isVolatile in interface ModifierInfo@Deprecated public Class<? extends Object> getType()
TypeInfo
getType in interface TypeInfopublic ClassLoader getClassLoader()
TypeInfo
getClassLoader in interface TypeInfopublic ClassLoader getClassLoaderInternal()
public ClassInfo getSuperclass()
ClassInfo
getSuperclass in interface ClassInfopublic ClassInfo getGenericSuperclass()
ClassInfo
getGenericSuperclass in interface ClassInfopublic InterfaceInfo[] getInterfaces()
ClassInfo
getInterfaces in interface ClassInfopublic InterfaceInfo[] getGenericInterfaces()
ClassInfo
getGenericInterfaces in interface ClassInfopublic MutableConstructorInfo[] getDeclaredConstructors()
MutableClassInfo
getDeclaredConstructors in interface ClassInfogetDeclaredConstructors in interface MutableClassInfopublic MutableConstructorInfo getDeclaredConstructor()
MutableClassInfo
getDeclaredConstructor in interface MutableClassInfopublic MutableConstructorInfo getDeclaredConstructor(TypeInfo... parameters)
MutableClassInfo
getDeclaredConstructor in interface ClassInfogetDeclaredConstructor in interface MutableClassInfoparameters - the parameters
public MutableConstructorInfo getDeclaredConstructor(String... parameters)
throws ClassNotFoundException
MutableClassInfo
getDeclaredConstructor in interface MutableClassInfoparameters - the parameters
ClassNotFoundExceptionpublic MutableFieldInfo getDeclaredField(String fieldName)
MutableClassInfo
getDeclaredField in interface ClassInfogetDeclaredField in interface MutableClassInfofieldName - the field name
public MutableFieldInfo[] getDeclaredFields()
MutableClassInfo
getDeclaredFields in interface ClassInfogetDeclaredFields in interface MutableClassInfopublic MutableMethodInfo getDeclaredMethod(String methodName)
MutableClassInfo
getDeclaredMethod in interface MutableClassInfomethodName - the method name
public MutableMethodInfo getDeclaredMethod(String methodName,
TypeInfo... parameters)
MutableClassInfo
getDeclaredMethod in interface ClassInfogetDeclaredMethod in interface MutableClassInfomethodName - the method nameparameters - the parameters
public MutableMethodInfo getDeclaredMethod(String methodName,
String... parameters)
throws ClassNotFoundException
MutableClassInfo
getDeclaredMethod in interface MutableClassInfomethodName - the method nameparameters - the parameters
ClassNotFoundExceptionpublic MutableMethodInfo[] getDeclaredMethods()
MutableClassInfo
getDeclaredMethods in interface ClassInfogetDeclaredMethods in interface MutableClassInfopublic boolean isArray()
TypeInfo
isArray in interface TypeInfopublic boolean isCollection()
TypeInfo
isCollection in interface TypeInfopublic boolean isMap()
TypeInfo
isMap in interface TypeInfopublic boolean isAnnotation()
TypeInfo
isAnnotation in interface TypeInfopublic boolean isEnum()
TypeInfo
isEnum in interface TypeInfopublic boolean isPrimitive()
TypeInfo
isPrimitive in interface TypeInfopublic static Class<?> getArrayClass(Class<?> clazz)
clazz - the class
public TypeInfo getArrayType()
TypeInfo
getArrayType in interface TypeInfo
public Object newArrayInstance(int size)
throws Throwable
TypeInfo
newArrayInstance in interface TypeInfosize - the size
Throwable - for any errorpublic boolean isAssignableFrom(TypeInfo info)
TypeInfo
isAssignableFrom in interface TypeInfoinfo - type info
PrimitiveInfo tests for progressionpublic boolean isInstance(Object object)
TypeInfo
isInstance in interface TypeInfoobject - the object to check
object is an instance of this classPrimitiveInfo tests for progressionpublic TypeInfoFactory getTypeInfoFactory()
TypeInfo
getTypeInfoFactory in interface TypeInfo
public Object convertValue(Object value)
throws Throwable
TypeInfo
convertValue in interface TypeInfovalue - the original value
Throwable - for any error
public Object convertValue(Object value,
boolean replaceProperties)
throws Throwable
TypeInfo
convertValue in interface TypeInfovalue - the original valuereplaceProperties - whether to replace properties
Throwable - for any error
public Object convertValue(Object value,
boolean replaceProperties,
boolean trim)
throws Throwable
TypeInfo
convertValue in interface TypeInfovalue - the original valuereplaceProperties - whether to replace propertiestrim - do we trim before conversion
Throwable - for any errorprotected int getHashCode()
getHashCode in class org.jboss.util.JBossObjectpublic boolean equals(Object obj)
equals in class Objectpublic void toShortString(org.jboss.util.JBossStringBuilder buffer)
toShortString in interface org.jboss.util.JBossInterfacetoShortString in class org.jboss.util.JBossObjectprotected void toString(org.jboss.util.JBossStringBuilder buffer)
toString in class org.jboss.util.JBossObjectpublic JavassistTypeInfoFactoryImpl getFactory()
protected MutableConstructorInfo generateConstructorInfo(javassist.CtConstructor constructor)
constructor - the constructor
protected MutableConstructorInfo generateConstructorInfo(SignatureKey key)
key - the key
protected MutableFieldInfo generateFieldInfo(javassist.CtField field)
field - the field
protected MutableMethodInfo generateMethodInfo(SignatureKey key)
key - the key
protected MutableMethodInfo generateMethodInfo(javassist.CtMethod method)
method - the method
protected MutableMethodInfo generateMethodInfo(SignatureKey key,
javassist.CtMethod method)
key - the keymethod - the method
protected javassist.CtClass[] getParameterTypes(SignatureKey key)
key - the key
protected Object getAnnotatedTarget()
public AnnotationValue[] getAnnotations()
AnnotatedInfo
getAnnotations in interface AnnotatedInfogetAnnotations in class JavassistInheritableAnnotationHolderpublic ClassInfo getSuperHolder()
getSuperHolder in class JavassistInheritableAnnotationHolderpublic TypeInfo[] getActualTypeArguments()
ClassInfo
getActualTypeArguments in interface ClassInfopublic TypeInfo getOwnerType()
ClassInfo
getOwnerType in interface ClassInfopublic ClassInfo getRawType()
ClassInfo
getRawType in interface ClassInfopublic TypeInfo getComponentType()
ClassInfo
getComponentType in interface ClassInfopublic TypeInfo getKeyType()
ClassInfo
getKeyType in interface ClassInfopublic TypeInfo getValueType()
ClassInfo
getValueType in interface ClassInfopublic PackageInfo getPackage()
ClassInfo
getPackage in interface ClassInfo
public void setAttachment(String name,
Object attachment)
TypeInfoIf you add a future object, subsequent gets will wait for the result
WARNING: Be careful about what you put in here. Don't create references across classloaders, if you are not sure add a WeakReference to the information.
setAttachment in interface TypeInfoname - the nameattachment - the attachment, pass null to remove an attachmentpublic <T> T getAttachment(Class<T> expectedType)
TypeInfo
getAttachment in interface TypeInfoT - the expected typeexpectedType - the expected type
public Object getAttachment(String attachmentName)
TypeInfo
getAttachment in interface TypeInfoattachmentName - the name
protected void clearMethodCache()
protected void clearConstructorCache()
protected void clearFieldCache()
public void addConstructor(MutableConstructorInfo mci)
MutableClassInfo
addConstructor in interface MutableClassInfopublic void addField(MutableFieldInfo mfi)
MutableClassInfo
addField in interface MutableClassInfopublic void addMethod(MutableMethodInfo mmi)
MutableClassInfo
addMethod in interface MutableClassInfopublic MutableConstructorInfo createMutableConstructor(Body body)
MutableClassInfo
createMutableConstructor in interface MutableClassInfobody - contains the code of the constructor to be created
public MutableConstructorInfo createMutableConstructor(int modifiers,
String[] parameters,
String[] exceptions)
MutableClassInfo
createMutableConstructor in interface MutableClassInfomodifiers - the modifiers of the constructor to be createdparameters - the parameters of the constructor to be createdexceptions - the exceptions that the constructor to be created declares to throw
public MutableConstructorInfo createMutableConstructor(int modifiers,
ClassInfo[] parameters,
ClassInfo[] exceptions)
MutableClassInfo
createMutableConstructor in interface MutableClassInfomodifiers - the modifiers of the constructor to be createdparameters - the parameters of the constructor to be createdexceptions - the exceptions that the constructor to be created declares to throw
public MutableConstructorInfo createMutableConstructor(int modifiers,
Body body,
String[] parameters,
String[] exceptions)
MutableClassInfo{}.
createMutableConstructor in interface MutableClassInfomodifiers - the modifiers of the constructor to be createdbody - the body of the constructor to be createdparameters - the parameters of the constructor to be createdexceptions - the exceptions that the constructor to be created declares to throw
public MutableConstructorInfo createMutableConstructor(int modifiers,
Body body,
ClassInfo[] parameters,
ClassInfo[] exceptions)
MutableClassInfo{}.
createMutableConstructor in interface MutableClassInfomodifiers - the modifiers of the constructor to be createdbody - the body of the constructor to be createdparameters - the parameters of the constructor to be createdexceptions - the exceptions that the constructor to be created declares to throw
public MutableFieldInfo createMutableField(int modifiers,
String type,
String fieldName)
MutableClassInfo
createMutableField in interface MutableClassInfomodifiers - the modifiers of the field to be createdtype - the type of the field to be createdfieldName - the name of the field to be created
public MutableFieldInfo createMutableField(int modifiers,
ClassInfo type,
String fieldName)
MutableClassInfo
createMutableField in interface MutableClassInfomodifiers - the modifiers of the field to be createdtype - the type of the field to be createdfieldName - the name of the field to be created
public MutableMethodInfo createMutableMethod(Body body)
MutableClassInfo
createMutableMethod in interface MutableClassInfobody - contains the entire declaration of the method, including its signature
public MutableMethodInfo createMutableMethod(int modifiers,
String returnType,
String methodName,
String[] parameters,
String[] exceptions)
MutableClassInfo
createMutableMethod in interface MutableClassInfomodifiers - the modifiers of the method to be createdreturnType - the return type of the method to be createdmethodName - the name of the method to be createdparameters - the parameters of the method to be createdexceptions - the exceptions that the method to be created declares to throw
public MutableMethodInfo createMutableMethod(int modifiers,
ClassInfo returnType,
String methodName,
ClassInfo[] parameters,
ClassInfo[] exceptions)
MutableClassInfo
createMutableMethod in interface MutableClassInfomodifiers - the modifiers of the method to be createdreturnType - the return type of the method to be createdmethodName - the name of the method to be createdparameters - the parameters of the method to be createdexceptions - the exceptions that the method to be created declares to throw
public MutableMethodInfo createMutableMethod(int modifiers,
String returnType,
String methodName,
Body body,
String[] parameters,
String[] exceptions)
MutableClassInfo{}.
createMutableMethod in interface MutableClassInfomodifiers - the modifiers of the method to be createdreturnType - the return type of the method to be createdmethodName - the name of the method to be createdbody - the body of the method to be createdparameters - the parameters of the method to be createdexceptions - the exceptions that the method to be created declares to throw
public MutableMethodInfo createMutableMethod(int modifiers,
ClassInfo returnType,
String methodName,
Body body,
ClassInfo[] parameters,
ClassInfo[] exceptions)
MutableClassInfo{}.
createMutableMethod in interface MutableClassInfomodifiers - the modifiers of the method to be createdreturnType - the return type of the method to be createdmethodName - the name of the method to be createdbody - the body of the method to be createdparameters - the parameters of the method to be createdexceptions - the exceptions that the method to be created declares to throw
public void removeConstructor(MutableConstructorInfo mci)
MutableClassInfo
removeConstructor in interface MutableClassInfopublic void removeField(MutableFieldInfo mfi)
MutableClassInfo
removeField in interface MutableClassInfopublic void removeMethod(MutableMethodInfo mmi)
MutableClassInfo
removeMethod in interface MutableClassInfopublic byte[] toByteCode()
MutableClassInfo
toByteCode in interface MutableClassInfoprotected Object writeReplace()
public String getTypeVariable()
ClassInfo
getTypeVariable in interface ClassInfopublic javassist.bytecode.SignatureAttribute.ClassSignature getClassSignature()
|
JBoss Reflection 2.2.1.SP1 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||