Class AttributeTypeProxy

Object
AttributeTypeProxy
All Implemented Interfaces:
AttributeType, PropertyType
Direct Known Subclasses:
ComplexTypeProxy, GeometryTypeProxy

public class AttributeTypeProxy extends Object implements AttributeType
Since:
2.4
Author:
Gabriel Roldan (Axios Engineering)
  • Constructor Details

    • AttributeTypeProxy

      public AttributeTypeProxy(Name typeName, Map registry)
  • Method Details

    • getSubject

      public AttributeType getSubject()
    • getBinding

      public Class<?> getBinding()
      Description copied from interface: PropertyType
      The java class that values of properties of the property type are bound to.

      This value is never null.

      Specified by:
      getBinding in interface PropertyType
      Returns:
      The binding of the property type.
    • getOperations

      public Collection getOperations()
    • getRestrictions

      public List<Filter> getRestrictions()
      Description copied from interface: PropertyType
      List of restrictions used define valid values for properties of this property type.

      Each restriction is a Filter object in which the property is passed through. If Filter.evaluate(Object) returns true the restriction is met. If false is returned then the restriction has not been met and the property should be considered invalid. Remember to check getSuper().getRestrictions() as well.

      This method returns an empty set in the case of no restrictions and should not return null.

      Specified by:
      getRestrictions in interface PropertyType
      Returns:
      List used to validate allowable values.
    • getSuper

      public AttributeType getSuper()
      Description copied from interface: AttributeType
      Override of PropertyType.getSuper() which type narrows to AttributeType.
      Specified by:
      getSuper in interface AttributeType
      Specified by:
      getSuper in interface PropertyType
      Returns:
      The parent or super type, or null.
      See Also:
    • isAbstract

      public boolean isAbstract()
      Description copied from interface: PropertyType
      Flag indicating if the type is abstract or not.
      Specified by:
      isAbstract in interface PropertyType
      Returns:
      true if the type is abstract, otherwise false.
    • isIdentified

      public boolean isIdentified()
      Description copied from interface: AttributeType
      Indicates if the type is identified or not.

      If this method returns true, then the corresponding attribute must have a unique identifier, ie, Attribute.getIdentifier() must return a value, and cannot be null.

      Specified by:
      isIdentified in interface AttributeType
      Returns:
      true if the attribute is identified, otherwise false.
      See Also:
    • getDescription

      public InternationalString getDescription()
      Description copied from interface: PropertyType
      Human readable description of this property type.
      Specified by:
      getDescription in interface PropertyType
      Returns:
      Human readable description of this property type.
    • getName

      public Name getName()
      Description copied from interface: PropertyType
      The name of the property type.

      Note that this is not the same name as Property.getName(), which is the name of the instance of the type, not the type itself.

      The returned name is a qualified name made up of two parts. The first a namespace uri (Name.getNamespaceURI(), and the second a local part (Name.getLocalPart().

      This value is never null.

      Specified by:
      getName in interface PropertyType
      Returns:
      The name of the property type.
    • getUserData

      public Map<Object,Object> getUserData()
      Description copied from interface: PropertyType
      A map of "user data" which enables applications to store "application-specific" information against a property type.

      As an example, consider an application that builds a PropertyType from an xml schema. A useful bit of information to attach to the PropertyType is the original schema itself, in whatever construct it might be stored in:

       
       XSDComplexTypeDefinition complexTypeDef = ...;
       PropertyType type = buildPropertyType( complexTypeDef );
      
       type.getUserData().put( XSDComplexTypeDefintion.class, complexTypeDef );
       
       
      Specified by:
      getUserData in interface PropertyType
      Returns:
      A map of user data.
    • equals

      public boolean equals(Object o)
      Description copied from interface: PropertyType
      Equality based on property PropertyType.getName().
      Specified by:
      equals in interface PropertyType
      Overrides:
      equals in class Object
      Returns:
      true if other is a PropertyType with the same name
    • hashCode

      public int hashCode()
      Description copied from interface: PropertyType
      Hashcode override based on PropertyType.getName().
      Specified by:
      hashCode in interface PropertyType
      Overrides:
      hashCode in class Object
      Returns:
      getName().hashCode()