Package gw.lang.reflect
Class FeatureManagerTypeInfoBase<T extends CharSequence>
- java.lang.Object
-
- gw.lang.reflect.TypeInfoBase
-
- gw.lang.reflect.FeatureManagerTypeInfoBase<T>
-
- All Implemented Interfaces:
IAnnotatedFeatureInfo
,IFeatureInfo
,IRelativeTypeInfo
,ITypeInfo
public abstract class FeatureManagerTypeInfoBase<T extends CharSequence> extends TypeInfoBase implements IRelativeTypeInfo
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface gw.lang.reflect.IAnnotatedFeatureInfo
IAnnotatedFeatureInfo.IAnnotationInfoHelper
-
Nested classes/interfaces inherited from interface gw.lang.reflect.IRelativeTypeInfo
IRelativeTypeInfo.Accessibility
-
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.IRelativeTypeInfo
Accessibility_Size
-
Fields inherited from interface gw.lang.reflect.ITypeInfo
TYPEINFO_EXT
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
FeatureManagerTypeInfoBase(IType ownersType)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description IRelativeTypeInfo.Accessibility
getAccessibilityForType(IType whosaskin)
IConstructorInfo
getCallableConstructor(IType... params)
Returns a IConstructorInfo matching the specified parameter types or null if no match is found.IMethodInfo
getCallableMethod(CharSequence strMethod, IType... params)
Returns a IMethodInfo matching the specified name and has parameter types that produce the best match.IType
getCompilingClass()
IConstructorInfo
getConstructor(IType... params)
Returns a IConstructorInfo that has parameter types that produce the best match.IConstructorInfo
getConstructor(IType whosAskin, IType[] params)
List<? extends IConstructorInfo>
getConstructors()
List<? extends IConstructorInfo>
getConstructors(IType whosAskin)
List<IAnnotationInfo>
getDeclaredAnnotations()
abstract List<? extends IConstructorInfo>
getDeclaredConstructors()
Returns a list ofIConstructorInfo
objects reflecting all the constructors declared by the class represented by thisIType
object.abstract List<? extends IMethodInfo>
getDeclaredMethods()
Returns a list ofIMethodInfo
objects reflecting all the methods declared by the class or interface represented by thisIType
object.abstract List<? extends IPropertyInfo>
getDeclaredProperties()
Returns a list ofIPropertyInfo
objects reflecting all the properties declared by the class or interface represented by thisIType
object.IMethodInfo
getMethod(IType whosaskin, CharSequence methodName, IType... params)
IMethodInfo
getMethod(CharSequence methodName, IType... params)
Returns a IMethodInfo matching the specified name and parameter types or null if no match is found.MethodList
getMethods()
MethodList
getMethods(IType whosAskin)
IType
getOwnersType()
Get this feature's owner's type.List<? extends IPropertyInfo>
getProperties()
List<IPropertyInfo>
getProperties(IType whosAskin)
IPropertyInfo
getProperty(IType whosAskin, CharSequence propName)
IPropertyInfo
getProperty(CharSequence propName)
Get a property mapped to the specified name.boolean
hasAnnotation(IType type)
-
Methods inherited from class gw.lang.reflect.TypeInfoBase
getAnnotation, getAnnotations, getAnnotationsOfType, getContainer, getDeprecatedReason, getDescription, getDisplayName, getEvent, getEvents, getName, hasDeclaredAnnotation, isDefaultImpl, isDeprecated
-
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
getAnnotation, getAnnotations, getAnnotationsOfType, getDeprecatedReason, hasDeclaredAnnotation, isDefaultImpl, isDeprecated
-
Methods inherited from interface gw.lang.reflect.IFeatureInfo
getContainer, getDescription, getDisplayName, getLocationInfo, getName
-
-
-
-
Constructor Detail
-
FeatureManagerTypeInfoBase
protected FeatureManagerTypeInfoBase(IType ownersType)
-
-
Method Detail
-
getOwnersType
public final IType getOwnersType()
Description copied from interface:IFeatureInfo
Get this feature's owner's type. If this feature has no owner, this is the type of the feature itself. Typically, the only kind of feature w/o an owner is an ITypeInfo, so properties, methods, params, etc. s/b considered owned. Hence, ultimately an ITypeInfo's type will be the owner's type for any given feature.- Specified by:
getOwnersType
in interfaceIFeatureInfo
-
getAccessibilityForType
public final IRelativeTypeInfo.Accessibility getAccessibilityForType(IType whosaskin)
- Specified by:
getAccessibilityForType
in interfaceIRelativeTypeInfo
-
getProperties
public final List<? extends IPropertyInfo> getProperties()
- Specified by:
getProperties
in interfaceITypeInfo
- Returns:
- An unmodifiable random access list of
IPropertyInfo
instances. The list is sorted ascending by name. Returns an empty list if there are no properties.
-
getProperties
public final List<IPropertyInfo> getProperties(IType whosAskin)
- Specified by:
getProperties
in interfaceIRelativeTypeInfo
-
getProperty
public final IPropertyInfo getProperty(CharSequence propName)
Description copied from interface:ITypeInfo
Get a property mapped to the specified name.- Specified by:
getProperty
in interfaceITypeInfo
- Parameters:
propName
- The property name.- Returns:
- An IPropertyInfo corresponding to the property name.
-
getProperty
public final IPropertyInfo getProperty(IType whosAskin, CharSequence propName)
- Specified by:
getProperty
in interfaceIRelativeTypeInfo
-
getMethods
public final MethodList getMethods()
- Specified by:
getMethods
in interfaceITypeInfo
- Returns:
- An unmodifiable random access list of
IMethodInfo
instances. The list is sorted ascending by name. Returns an empty list if there are no methods.
-
getMethods
public final MethodList getMethods(IType whosAskin)
- Specified by:
getMethods
in interfaceIRelativeTypeInfo
-
getConstructors
public final List<? extends IConstructorInfo> getConstructors()
- Specified by:
getConstructors
in interfaceITypeInfo
- Returns:
- An unmodifiable random access list of
IConstructorInfo
instances. The list is sorted ascending by name. Returns an empty list if there are no constructors.
-
getConstructors
public final List<? extends IConstructorInfo> getConstructors(IType whosAskin)
- Specified by:
getConstructors
in interfaceIRelativeTypeInfo
-
getMethod
public final IMethodInfo getMethod(CharSequence methodName, IType... params)
Description copied from interface:ITypeInfo
Returns a IMethodInfo matching the specified name and parameter types or null if no match is found. Noteparams
must exactly match those of the target method in number, order, and type. If null,params
is treated as an empty array.- Specified by:
getMethod
in interfaceITypeInfo
- Overrides:
getMethod
in classTypeInfoBase
- Parameters:
methodName
- 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.
-
getMethod
public final IMethodInfo getMethod(IType whosaskin, CharSequence methodName, IType... params)
- Specified by:
getMethod
in interfaceIRelativeTypeInfo
-
getConstructor
public final IConstructorInfo getConstructor(IType... params)
Description copied from interface:ITypeInfo
Returns 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:
getConstructor
in interfaceITypeInfo
- Overrides:
getConstructor
in classTypeInfoBase
- 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.
-
getConstructor
public final IConstructorInfo getConstructor(IType whosAskin, IType[] params)
- Specified by:
getConstructor
in interfaceIRelativeTypeInfo
-
getDeclaredAnnotations
public final List<IAnnotationInfo> getDeclaredAnnotations()
- Specified by:
getDeclaredAnnotations
in interfaceIAnnotatedFeatureInfo
- Returns:
- A map of AnnotationInfo objects by type representing all the annotations associated with this feature, or an empty map if there are no annotations.
-
hasAnnotation
public final boolean hasAnnotation(IType type)
- Specified by:
hasAnnotation
in interfaceIAnnotatedFeatureInfo
- Overrides:
hasAnnotation
in classTypeInfoBase
- 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
-
getDeclaredProperties
public abstract List<? extends IPropertyInfo> getDeclaredProperties()
Description copied from interface:IRelativeTypeInfo
Returns a list ofIPropertyInfo
objects reflecting all the properties declared by the class or interface represented by thisIType
object. This includes public, protected, internal access, and private properties, but excludes inherited properties. The elements in the list are ordered by declaration order in the file. This method returns an empty list if the type does not contain any properties- Specified by:
getDeclaredProperties
in interfaceIRelativeTypeInfo
- Returns:
- the list of
IPropertyInfo
objects representing all the declared properties of this class
-
getDeclaredMethods
public abstract List<? extends IMethodInfo> getDeclaredMethods()
Description copied from interface:IRelativeTypeInfo
Returns a list ofIMethodInfo
objects reflecting all the methods declared by the class or interface represented by thisIType
object. This includes public, protected, internal access, and private methods, but excludes inherited methods. The elements in the list are ordered by declaration order in the file. This method returns an empty list if the type does not contain any methods- Specified by:
getDeclaredMethods
in interfaceIRelativeTypeInfo
- Returns:
- the list of
IMethodInfo
objects representing all the declared methods of this class
-
getDeclaredConstructors
public abstract List<? extends IConstructorInfo> getDeclaredConstructors()
Description copied from interface:IRelativeTypeInfo
Returns a list ofIConstructorInfo
objects reflecting all the constructors declared by the class represented by thisIType
object. This includes public, protected, internal access, and private constructors. Interfaces and arrays always return an empty list. The elements in the list are ordered by declaration order in the file. This method returns an empty list if the type does not contain any methods- Specified by:
getDeclaredConstructors
in interfaceIRelativeTypeInfo
- Returns:
- the list of
IConstructorInfo
objects representing all the declared methods of this class
-
getCompilingClass
public final IType getCompilingClass()
-
getCallableMethod
public IMethodInfo getCallableMethod(CharSequence strMethod, IType... params)
Description copied from interface:ITypeInfo
Returns 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:
getCallableMethod
in interfaceITypeInfo
- Overrides:
getCallableMethod
in classTypeInfoBase
- Parameters:
strMethod
- 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.
-
getCallableConstructor
public IConstructorInfo getCallableConstructor(IType... params)
Description copied from interface:ITypeInfo
Returns a IConstructorInfo matching the specified parameter types or null if no match is found.- Specified by:
getCallableConstructor
in interfaceITypeInfo
- Overrides:
getCallableConstructor
in classTypeInfoBase
- 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.
-
-