public class JavassistTypeInfo extends JavassistInheritableAnnotationHolder implements ClassInfo, InterfaceInfo
allAnnotations, allAnnotationsArray, ctClass
annotationHelper, annotationMap, annotationsArray
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
Modifier and Type | Method and Description |
---|---|
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
|
boolean |
equals(Object obj) |
protected ConstructorInfo |
generateConstructorInfo(javassist.CtConstructor constructor)
Generate constructor info
|
protected ConstructorInfo |
generateConstructorInfo(org.jboss.reflect.plugins.javassist.SignatureKey key)
Generate constructor info
|
protected FieldInfo |
generateFieldInfo(javassist.CtField field)
Generate field info
|
protected MethodInfo |
generateMethodInfo(javassist.CtMethod method)
Generate method info
|
protected MethodInfo |
generateMethodInfo(org.jboss.reflect.plugins.javassist.SignatureKey key)
Generate method info
|
protected MethodInfo |
generateMethodInfo(org.jboss.reflect.plugins.javassist.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
|
<T> T |
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 name)
Get an attachment from the type
|
TypeInfo |
getComponentType()
Get the component type if it is a collection or an array
|
ConstructorInfo |
getDeclaredConstructor(TypeInfo[] parameters)
Get a declared constructor
|
ConstructorInfo[] |
getDeclaredConstructors()
Get the declared constructors
|
FieldInfo |
getDeclaredField(String name)
Get the declared field
|
FieldInfo[] |
getDeclaredFields()
Get the declared fields
|
MethodInfo |
getDeclaredMethod(String name,
TypeInfo[] parameters)
Get the declared method
|
MethodInfo[] |
getDeclaredMethods()
Get the declared methods
|
protected 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(org.jboss.reflect.plugins.javassist.SignatureKey key)
Get the parameter types
|
ClassInfo |
getRawType()
Get the raw type
|
String |
getSimpleName()
Get the simple name
|
ClassInfo |
getSuperclass()
Get the super class
|
JavassistInheritableAnnotationHolder |
getSuperHolder() |
Class<? extends Object> |
getType()
Deprecated.
|
TypeInfoFactory |
getTypeInfoFactory()
Get the TypeInfoFactory that created this type info
|
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()
Whether it is public
|
boolean |
isStatic()
Whether it is static
|
boolean |
isVolatile()
Whether it is volatile
|
Object |
newArrayInstance(int size)
Create a new array
|
void |
setAttachment(String name,
Object attachment)
Set an attachment against the type.
|
void |
toShortString(org.jboss.util.JBossStringBuilder buffer) |
protected void |
toString(org.jboss.util.JBossStringBuilder buffer) |
getAllAnnotations, getAnnotation, getAnnotations, isAnnotationPresent, setupAnnotations
getUnderlyingAnnotation, getUnderlyingAnnotations, isAnnotationPresent
cacheGetHashCode, cacheToString, clone, equals, flushJBossObjectCache, getClassShortName, hashCode, list, notEqual, toShortString, toString, toStringImplementation
finalize, getClass, notify, notifyAll, wait, wait, wait
getAnnotation, getUnderlyingAnnotation, getUnderlyingAnnotations, isAnnotationPresent, isAnnotationPresent
public boolean isInterface()
ClassInfo
isInterface
in interface ClassInfo
public String getSimpleName()
TypeInfo
getSimpleName
in interface TypeInfo
public int getModifiers()
ModifierInfo
getModifiers
in interface ModifierInfo
public boolean isPublic()
ModifierInfo
isPublic
in interface ModifierInfo
public boolean isStatic()
ModifierInfo
isStatic
in interface ModifierInfo
public boolean isVolatile()
ModifierInfo
isVolatile
in interface ModifierInfo
@Deprecated public Class<? extends Object> getType()
TypeInfo
public ClassInfo getSuperclass()
ClassInfo
getSuperclass
in interface ClassInfo
public ClassInfo getGenericSuperclass()
ClassInfo
getGenericSuperclass
in interface ClassInfo
public InterfaceInfo[] getInterfaces()
ClassInfo
getInterfaces
in interface ClassInfo
public InterfaceInfo[] getGenericInterfaces()
ClassInfo
getGenericInterfaces
in interface ClassInfo
public ConstructorInfo[] getDeclaredConstructors()
ClassInfo
getDeclaredConstructors
in interface ClassInfo
public ConstructorInfo getDeclaredConstructor(TypeInfo[] parameters)
ClassInfo
getDeclaredConstructor
in interface ClassInfo
parameters
- the parameterspublic FieldInfo getDeclaredField(String name)
ClassInfo
getDeclaredField
in interface ClassInfo
name
- the field namepublic FieldInfo[] getDeclaredFields()
ClassInfo
getDeclaredFields
in interface ClassInfo
public MethodInfo getDeclaredMethod(String name, TypeInfo[] parameters)
ClassInfo
getDeclaredMethod
in interface ClassInfo
name
- the method nameparameters
- the parameterspublic MethodInfo[] getDeclaredMethods()
ClassInfo
getDeclaredMethods
in interface ClassInfo
public boolean isArray()
TypeInfo
public boolean isCollection()
TypeInfo
isCollection
in interface TypeInfo
public boolean isMap()
TypeInfo
public boolean isAnnotation()
TypeInfo
isAnnotation
in interface TypeInfo
public boolean isEnum()
TypeInfo
public boolean isPrimitive()
TypeInfo
isPrimitive
in interface TypeInfo
public static Class<?> getArrayClass(Class<?> clazz)
clazz
- the classpublic TypeInfo getArrayType()
TypeInfo
getArrayType
in interface TypeInfo
public Object newArrayInstance(int size) throws Throwable
TypeInfo
newArrayInstance
in interface TypeInfo
size
- the sizeThrowable
- for any errorpublic boolean isAssignableFrom(TypeInfo info)
TypeInfo
isAssignableFrom
in interface TypeInfo
info
- type infoPrimitiveInfo tests for progression
public boolean isInstance(Object object)
TypeInfo
isInstance
in interface TypeInfo
object
- the object to checkobject
is an instance of this classPrimitiveInfo tests for progression
public TypeInfoFactory getTypeInfoFactory()
TypeInfo
getTypeInfoFactory
in interface TypeInfo
public Object convertValue(Object value) throws Throwable
TypeInfo
convertValue
in interface TypeInfo
value
- the original valueThrowable
- for any errorpublic Object convertValue(Object value, boolean replaceProperties) throws Throwable
TypeInfo
convertValue
in interface TypeInfo
value
- the original valuereplaceProperties
- whether to replace propertiesThrowable
- for any errorpublic Object convertValue(Object value, boolean replaceProperties, boolean trim) throws Throwable
TypeInfo
convertValue
in interface TypeInfo
value
- the original valuereplaceProperties
- whether to replace propertiestrim
- do we trim before conversionThrowable
- for any errorprotected int getHashCode()
getHashCode
in class org.jboss.util.JBossObject
public void toShortString(org.jboss.util.JBossStringBuilder buffer)
toShortString
in interface org.jboss.util.JBossInterface
toShortString
in class org.jboss.util.JBossObject
protected void toString(org.jboss.util.JBossStringBuilder buffer)
toString
in class org.jboss.util.JBossObject
protected JavassistTypeInfoFactoryImpl getFactory()
protected ConstructorInfo generateConstructorInfo(javassist.CtConstructor constructor)
constructor
- the constructorprotected ConstructorInfo generateConstructorInfo(org.jboss.reflect.plugins.javassist.SignatureKey key)
key
- the keyprotected FieldInfo generateFieldInfo(javassist.CtField field)
field
- the fieldprotected MethodInfo generateMethodInfo(org.jboss.reflect.plugins.javassist.SignatureKey key)
key
- the keyprotected MethodInfo generateMethodInfo(javassist.CtMethod method)
method
- the methodprotected MethodInfo generateMethodInfo(org.jboss.reflect.plugins.javassist.SignatureKey key, javassist.CtMethod method)
key
- the keymethod
- the methodprotected javassist.CtClass[] getParameterTypes(org.jboss.reflect.plugins.javassist.SignatureKey key)
key
- the keyprotected Object getAnnotatedTarget()
public AnnotationValue[] getAnnotations()
AnnotatedInfo
getAnnotations
in interface AnnotatedInfo
getAnnotations
in class JavassistInheritableAnnotationHolder
public JavassistInheritableAnnotationHolder getSuperHolder()
getSuperHolder
in class JavassistInheritableAnnotationHolder
public TypeInfo[] getActualTypeArguments()
ClassInfo
getActualTypeArguments
in interface ClassInfo
public TypeInfo getOwnerType()
ClassInfo
getOwnerType
in interface ClassInfo
public ClassInfo getRawType()
ClassInfo
getRawType
in interface ClassInfo
public TypeInfo getComponentType()
ClassInfo
getComponentType
in interface ClassInfo
public TypeInfo getKeyType()
ClassInfo
getKeyType
in interface ClassInfo
public TypeInfo getValueType()
ClassInfo
getValueType
in interface ClassInfo
public PackageInfo getPackage()
ClassInfo
getPackage
in interface ClassInfo
public void setAttachment(String name, Object attachment)
TypeInfo
If 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 TypeInfo
name
- the nameattachment
- the attachment, pass null to remove an attachmentpublic <T> T getAttachment(Class<T> expectedType)
TypeInfo
getAttachment
in interface TypeInfo
T
- the expected typeexpectedType
- the expected typepublic Object getAttachment(String name)
TypeInfo
getAttachment
in interface TypeInfo
name
- the nameCopyright © 2017 JBoss by Red Hat. All rights reserved.