Package gw.lang.reflect
Class PropertyInfoBuilder.BuiltPropertyInfo
java.lang.Object
gw.lang.reflect.BaseFeatureInfo
gw.lang.reflect.PropertyInfoBuilder.BuiltPropertyInfo
- All Implemented Interfaces:
IAnnotatedFeatureInfo,IAttributedFeatureInfo,IFeatureInfo,IIntrinsicTypeReference,IPropertyInfo
- Enclosing class:
- PropertyInfoBuilder
public static class PropertyInfoBuilder.BuiltPropertyInfo
extends BaseFeatureInfo
implements IPropertyInfo
-
Nested Class Summary
Nested classes/interfaces inherited from interface gw.lang.reflect.IAnnotatedFeatureInfo
IAnnotatedFeatureInfo.IAnnotationInfoHelperNested classes/interfaces inherited from interface gw.lang.reflect.IAttributedFeatureInfo
IAttributedFeatureInfo.MODIFIER -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate IPropertyAccessorprivate List<IAnnotationInfo>private final Stringprivate final Stringprivate final booleanprivate final Stringprivate final ILocationInfoprivate final Stringprivate booleanprivate ITypeprivate final booleanFields inherited from interface gw.lang.reflect.IAnnotatedFeatureInfo
ANNOTATION_HELPER -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionA full description of this feature.The type of this feature e.g., for a property this is the property's type.getName()Gets the programmatic name or identifier of this feature.private voidbooleanbooleanbooleanisStatic()True if this feature is static, meaning the feature is not specific to a particular instance of the feature's containing type.booleanbooleanisWritable(IType whosAskin) toString()Methods inherited from class gw.lang.reflect.BaseFeatureInfo
compactAndLockList, getAnnotation, getAnnotations, getAnnotationsOfType, getContainer, getDisplayName, getOwnersType, getParamTypes, getSuperAnnotatedElements, hasAnnotation, hasDeclaredAnnotation, isAbstract, isDefaultImpl, isFinal, isHidden, isInternal, isInternalAPI, isPrivate, isProtected, isPublic, isReified, isScriptable, isVisibleMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface gw.lang.reflect.IAnnotatedFeatureInfo
getAnnotation, getAnnotations, getAnnotationsOfType, hasAnnotation, hasDeclaredAnnotation, isDefaultImplMethods inherited from interface gw.lang.reflect.IAttributedFeatureInfo
isAbstract, isFinal, isHidden, isInternal, isPrivate, isProtected, isPublic, isReified, isScriptable, isVisibleMethods inherited from interface gw.lang.reflect.IFeatureInfo
getContainer, getDisplayName, getOwnersTypeMethods inherited from interface gw.lang.reflect.IIntrinsicTypeReference
getAssignableFeatureTypeMethods inherited from interface gw.lang.reflect.IPropertyInfo
isReadable
-
Field Details
-
_isStatic
private final boolean _isStatic -
_name
-
_javaGetterMethodName
-
_accessor
-
_readable
private boolean _readable -
_writable
private final boolean _writable -
_type
-
_description
-
_deprecated
-
_annotations
-
_locationInfo
-
-
Constructor Details
-
BuiltPropertyInfo
-
-
Method Details
-
getJavaMethodName
-
inferAccessorAndTypeFromName
private void inferAccessorAndTypeFromName() -
getDeclaredAnnotations
- Specified by:
getDeclaredAnnotationsin 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.
-
isStatic
public boolean isStatic()Description copied from interface:IAttributedFeatureInfoTrue if this feature is static, meaning the feature is not specific to a particular instance of the feature's containing type.- Specified by:
isStaticin interfaceIAttributedFeatureInfo
-
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
-
isReadable
public boolean isReadable()- Specified by:
isReadablein interfaceIPropertyInfo- Returns:
- true if the property is readable given the visibility constraint passed in, false otherwise.
-
isWritable
- Specified by:
isWritablein interfaceIPropertyInfo- Parameters:
whosAskin- The type querying the property writability. For example, passing in the type the property is on will allow properties that have private access in the setter to be written to. Passing in an unrelated type will only allow properties that are to be written to.- Returns:
- True if the property is writable given the visibility constraint passed in, false otherwise.
-
isWritable
public boolean isWritable()- Specified by:
isWritablein interfaceIPropertyInfo- Returns:
- True if the property is writable given the visibility constraint passed in, false otherwise.
-
getAccessor
- Specified by:
getAccessorin interfaceIPropertyInfo- Returns:
- the PropertyAccessor (for getting and setting) this property.
-
getPresentationInfo
- Specified by:
getPresentationInfoin interfaceIPropertyInfo
-
getFeatureType
Description copied from interface:IIntrinsicTypeReferenceThe type of this feature e.g., for a property this is the property's type.- Specified by:
getFeatureTypein interfaceIIntrinsicTypeReference
-
getDescription
Description copied from interface:IFeatureInfoA full description of this feature.- Specified by:
getDescriptionin interfaceIFeatureInfo- Overrides:
getDescriptionin classBaseFeatureInfo
-
isDeprecated
public boolean isDeprecated()- Specified by:
isDeprecatedin interfaceIAnnotatedFeatureInfo- Overrides:
isDeprecatedin classBaseFeatureInfo- Returns:
- True if this feature is deprecated.
-
getDeprecatedReason
- Specified by:
getDeprecatedReasonin interfaceIAnnotatedFeatureInfo- Overrides:
getDeprecatedReasonin classBaseFeatureInfo- Returns:
- The deprecation message, or null if the feature is not deprecated.
-
toString
- Overrides:
toStringin classBaseFeatureInfo
-
getLocationInfo
- Specified by:
getLocationInfoin interfaceIFeatureInfo
-