Package gw.lang.reflect
Class TypeInfoBase
- java.lang.Object
-
- gw.lang.reflect.TypeInfoBase
-
- All Implemented Interfaces:
IAnnotatedFeatureInfo,IFeatureInfo,ITypeInfo
- Direct Known Subclasses:
DefaultArrayTypeInfo,FeatureManagerTypeInfoBase
public abstract class TypeInfoBase extends Object implements ITypeInfo
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface gw.lang.reflect.IAnnotatedFeatureInfo
IAnnotatedFeatureInfo.IAnnotationInfoHelper
-
Nested classes/interfaces inherited from interface gw.lang.reflect.ITypeInfo
ITypeInfo.FIND
-
-
Field Summary
-
Fields inherited from interface gw.lang.reflect.IAnnotatedFeatureInfo
ANNOTATION_HELPER
-
Fields inherited from interface gw.lang.reflect.ITypeInfo
TYPEINFO_EXT
-
-
Constructor Summary
Constructors Constructor Description TypeInfoBase()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description IAnnotationInfogetAnnotation(IType type)List<IAnnotationInfo>getAnnotations()List<IAnnotationInfo>getAnnotationsOfType(IType type)IConstructorInfogetCallableConstructor(IType... params)Returns a IConstructorInfo matching the specified parameter types or null if no match is found.IMethodInfogetCallableMethod(CharSequence method, IType... params)Returns a IMethodInfo matching the specified name and has parameter types that produce the best match.IConstructorInfogetConstructor(IType... params)Returns a IConstructorInfo that has parameter types that produce the best match.IFeatureInfogetContainer()Get this feature's containing feature.StringgetDeprecatedReason()StringgetDescription()A full description of this feature.StringgetDisplayName()Gets the display name of this feature.IEventInfogetEvent(CharSequence event)Get an event mapped to the specified name.List<? extends IEventInfo>getEvents()IMethodInfogetMethod(CharSequence methodName, IType... params)Returns a IMethodInfo matching the specified name and parameter types or null if no match is found.StringgetName()Gets the programmatic name or identifier of this feature.booleanhasAnnotation(IType type)booleanhasDeclaredAnnotation(IType type)booleanisDefaultImpl()booleanisDeprecated()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface gw.lang.reflect.IAnnotatedFeatureInfo
getDeclaredAnnotations
-
Methods inherited from interface gw.lang.reflect.IFeatureInfo
getLocationInfo, getOwnersType
-
Methods inherited from interface gw.lang.reflect.ITypeInfo
getConstructors, getMethods, getProperties, getProperty
-
-
-
-
Method Detail
-
getMethod
public IMethodInfo getMethod(CharSequence methodName, IType... params)
Description copied from interface:ITypeInfoReturns a IMethodInfo matching the specified name and parameter types or null if no match is found. Noteparamsmust exactly match those of the target method in number, order, and type. If null,paramsis treated as an empty array.
-
getCallableMethod
public IMethodInfo getCallableMethod(CharSequence method, IType... params)
Description copied from interface:ITypeInfoReturns a IMethodInfo matching the specified name and has parameter types that produce the best match. If there is a tie with method names then this will throw an illegal argument exception.- Specified by:
getCallableMethodin interfaceITypeInfo- Parameters:
method- The name of the method to find.params- Represents the exact number, order, and type of parameters in the method. A null value here is treated as an empty array.- Returns:
- A IMethodInfo matching the name and parameter types.
-
getConstructor
public IConstructorInfo getConstructor(IType... params)
Description copied from interface:ITypeInfoReturns a IConstructorInfo that has parameter types that produce the best match. If there is a tie with method names then this will throw an illegal argument exception.- Specified by:
getConstructorin interfaceITypeInfo- Parameters:
params- Represents the exact number, order, and type of parameters in the constructor. A null value here is treated as an empty array.- Returns:
- A IConstructorInfo matching the parameter types.
-
getCallableConstructor
public IConstructorInfo getCallableConstructor(IType... params)
Description copied from interface:ITypeInfoReturns a IConstructorInfo matching the specified parameter types or null if no match is found.- Specified by:
getCallableConstructorin interfaceITypeInfo- Parameters:
params- Represents the exact number, order, and type of parameters in the constructor. A null value here is treated as an empty array.- Returns:
- A IConstructorInfo matching the parameter types.
-
getEvents
public List<? extends IEventInfo> getEvents()
-
getEvent
public IEventInfo getEvent(CharSequence event)
Description copied from interface:ITypeInfoGet an event mapped to the specified name.
-
getAnnotations
public List<IAnnotationInfo> getAnnotations()
- Specified by:
getAnnotationsin interfaceIAnnotatedFeatureInfo- Returns:
- A map of AnnotationInfo objects by type representing all the annotations associated with this feature and all the features in its ancestry, or an empty map if there are no annotations.
-
getAnnotationsOfType
public List<IAnnotationInfo> getAnnotationsOfType(IType type)
- Specified by:
getAnnotationsOfTypein interfaceIAnnotatedFeatureInfo- Returns:
- A list of AnnotationInfo objects having the specified type.
-
getAnnotation
public IAnnotationInfo getAnnotation(IType type)
- Specified by:
getAnnotationin interfaceIAnnotatedFeatureInfo- Returns:
- An AnnotationInfo object having the specified type, or null if no such AnnotationInfo exists.
-
hasAnnotation
public boolean hasAnnotation(IType type)
- Specified by:
hasAnnotationin interfaceIAnnotatedFeatureInfo- Parameters:
type- The type of the annotation to test for existence.- Returns:
- true If this feature has an annotation with of the given type, false otherwise
-
hasDeclaredAnnotation
public boolean hasDeclaredAnnotation(IType type)
- Specified by:
hasDeclaredAnnotationin interfaceIAnnotatedFeatureInfo- Parameters:
type- The type of the annotation to test for existence.- Returns:
- true If this feature has a declared annotation of the given type, false otherwise
-
isDeprecated
public boolean isDeprecated()
- Specified by:
isDeprecatedin interfaceIAnnotatedFeatureInfo- Returns:
- True if this feature is deprecated.
-
getDeprecatedReason
public String getDeprecatedReason()
- Specified by:
getDeprecatedReasonin interfaceIAnnotatedFeatureInfo- Returns:
- The deprecation message, or null if the feature is not deprecated.
-
isDefaultImpl
public boolean isDefaultImpl()
- Specified by:
isDefaultImplin interfaceIAnnotatedFeatureInfo- Returns:
- True if this feature is the default implementation e.g., default interface method
-
getContainer
public IFeatureInfo getContainer()
Description copied from interface:IFeatureInfoGet this feature's containing feature. May be null.- Specified by:
getContainerin interfaceIFeatureInfo
-
getName
public String getName()
Description copied from interface:IFeatureInfoGets the programmatic name or identifier of this feature. Note this name should follow Java identifier naming conventions (alpha-num and underscores, but can't start with a digit).- Specified by:
getNamein interfaceIFeatureInfo
-
getDisplayName
public String getDisplayName()
Description copied from interface:IFeatureInfoGets the display name of this feature. There is no guarantee this display name is localized.- Specified by:
getDisplayNamein interfaceIFeatureInfo
-
getDescription
public String getDescription()
Description copied from interface:IFeatureInfoA full description of this feature.- Specified by:
getDescriptionin interfaceIFeatureInfo
-
-