Class Descriptors


  • public class Descriptors
    extends Object
    Helper methods for dealing with Descriptor.

    This methods opperate directly on the interfaces provided by geoapi, no actual classes were harmed in the making of these utility methods.

    Since:
    2.5
    Author:
    Jody Garnett, Justin Deoliveira
    • Constructor Detail

      • Descriptors

        public Descriptors()
    • Method Detail

      • find

        public static final AttributeDescriptor find​(List descriptors,
                                                     Name name)
        Returns the attribute descriptor from a list which matches the specified name, or null if no such descriptor is found.
        Parameters:
        descriptors - The list of AttributeDescriptor.
        name - The name to match.
        Returns:
        The matching attribute descriptor, or null.
      • type

        public static AttributeType type​(Collection schema,
                                         Name name)
        Locate type associated with provided name, or null if not found.

        Namespaces are not taken in count, so if two properties share the same local name, the first one that matches will be returned.

      • type

        public static AttributeType type​(ComplexType schema,
                                         String name)
        Locate type associated with provided name, or null if not found.

        Namespaces are not taken in count, so if two properties share the same local name, the first one that matches will be returned.

      • type

        public static AttributeType type​(ComplexType schema,
                                         Name name)
        Locate type associated with provided name, or null if not found.
      • node

        public static AttributeDescriptor node​(ComplexType schema,
                                               Name name)
        Finds the node associated with the provided name.
        Returns:
        AttributeDescriptor assoicated with provided name, or null if not found.
      • node

        public static AttributeDescriptor node​(Collection schema,
                                               Name name)
        Finds the node associated with the provided name.
        Returns:
        AttributeDescriptor assoicated with provided name, or null if not found.
      • node

        public static AttributeDescriptor node​(ComplexType schema,
                                               AttributeType type)
        Finds the node associated with the provided type.

        Note a type may be included in more then one node, in which case this will only find the first one.

        Returns:
        AttributeDescriptor assoicated with provided name, or null if not found.
      • types

        public static List<AttributeType> types​(AttributeType type)
        List of types described by this schema.

        On the cases where order matters, the returned list preserves the order of descriptors declared in schema

        Returns:
        List of nodes for the provided type, or empty.
      • multiple

        public static boolean multiple​(ComplexType schema,
                                       AttributeType type)
        True if there may be more then one AttributeType in the schema.

        This may happen if:

        • The AttributeType is referenced by more then one node.
        • The node referencing the type has multiplicy greater then 1
      • list

        public static List list​(AttributeType type)
        Returns the list of descriptors defined in the provided schema, preserving declaration order when relevant.
      • isSimple

        public static boolean isSimple​(Collection<AttributeDescriptor> schema)
        Determines if a collection of attribute descriptors is "simple".
        Parameters:
        schema - Collection of attribute descriptors.
        Returns:
        True if schema is simple, otherwise false.