Class FieldScope


  • public class FieldScope
    extends MemberScope<com.fasterxml.classmate.members.ResolvedField,​Field>
    Representation of a single introspected field.
    • Constructor Detail

      • FieldScope

        protected FieldScope​(com.fasterxml.classmate.members.ResolvedField field,
                             com.fasterxml.classmate.ResolvedTypeWithMembers declaringTypeMembers,
                             TypeContext context)
        Constructor.
        Parameters:
        field - targeted field
        declaringTypeMembers - collection of the declaring type's (other) fields and methods
        context - the overall type resolution context
      • FieldScope

        protected FieldScope​(com.fasterxml.classmate.members.ResolvedField field,
                             com.fasterxml.classmate.ResolvedType overriddenType,
                             String overriddenName,
                             com.fasterxml.classmate.ResolvedTypeWithMembers declaringTypeMembers,
                             TypeContext context)
        Constructor.
        Parameters:
        field - targeted field
        overriddenType - alternative type for this field
        overriddenName - alternative name for this field
        declaringTypeMembers - collection of the declaring type's (other) fields and methods
        context - the overall type resolution context
    • Method Detail

      • withOverriddenType

        public FieldScope withOverriddenType​(com.fasterxml.classmate.ResolvedType overriddenType)
        Description copied from class: MemberScope
        Create another instance for this field or method and context, but overriding the declared field/method return type with the given one.
        Specified by:
        withOverriddenType in class MemberScope<com.fasterxml.classmate.members.ResolvedField,​Field>
        Parameters:
        overriddenType - alternative type for this field or method return value (overriding the declared type)
        Returns:
        new instance with the given type override
        See Also:
        MemberScope.getDeclaredType(), MemberScope.getOverriddenType()
      • getSchemaPropertyName

        public String getSchemaPropertyName()
        Returns the name to be used to reference this field in its parent's "properties".
        Specified by:
        getSchemaPropertyName in class MemberScope<com.fasterxml.classmate.members.ResolvedField,​Field>
        Returns:
        the (potentially overridden) name of this field
        See Also:
        MemberScope.getName()
      • isTransient

        public boolean isTransient()
        Indicates whether the field has the transient keyword.
        Returns:
        whether field is transient
      • findGetter

        public MethodScope findGetter()
        Return the conventional getter method (if one exists). E.g. for a field named "foo", look-up either "getFoo()" or "isFoo()".
        Returns:
        public getter from within the field's declaring class
      • hasGetter

        public boolean hasGetter()
        Determine whether the field's declaring class contains a matching method starting with "get" or "is".
        Returns:
        whether a matching getter exists in the field's declaring class
        See Also:
        findGetter()
      • getAnnotationConsideringFieldAndGetter

        public <A extends Annotation> A getAnnotationConsideringFieldAndGetter​(Class<A> annotationClass)
        Description copied from class: MemberScope
        Return the annotation of the given type on the member, if such an annotation is present on either the field or its getter.
        Specified by:
        getAnnotationConsideringFieldAndGetter in class MemberScope<com.fasterxml.classmate.members.ResolvedField,​Field>
        Type Parameters:
        A - type of annotation
        Parameters:
        annotationClass - type of annotation
        Returns:
        annotation instance (or null if no annotation of the given type is present)