Class DefaultIdentifier

    • Constructor Detail

      • DefaultIdentifier

        public DefaultIdentifier()
        Construct an initially empty identifier.
      • DefaultIdentifier

        public DefaultIdentifier​(String code)
        Creates an identifier initialized to the given code.
        Parameters:
        code - the alphanumeric value identifying an instance in the namespace, or null if none.
      • DefaultIdentifier

        public DefaultIdentifier​(String codeSpace,
                                 String code,
                                 String version)
        Creates a new identifier initialized to the given code, code space and version number.
        Parameters:
        code­Space - identifier or namespace in which the code is valid, or null if not available.
        code - alphanumeric value identifying an instance in the namespace, or null if none.
        version - the version identifier for the namespace as specified by the code authority, or null if none.
        Since:
        1.0
      • DefaultIdentifier

        public DefaultIdentifier​(Citation authority,
                                 String code)
        Creates an identifier initialized to the given authority and code. This constructor automatically initializes the code space to a value inferred from the given authority, if a suitable value can be found. This constructor proceeds by searching for the first suitable property in the following list:
        1. The value of Identifier­Space​.get­Name().
        2. A citation identifier which is a valid unicode identifier.
        3. Only if the citation has no identifier, a citation title or alternate title which is a valid unicode identifier.
        Parameters:
        authority - the the person or party responsible for maintenance of the namespace, or null if none.
        code - the alphanumeric value identifying an instance in the namespace, or null if none.
        See Also:
        Citations​.to­Code­Space(Citation)
      • DefaultIdentifier

        public DefaultIdentifier​(Identifier object)
        Constructs a new instance initialized with the values from the specified metadata object. This is a shallow copy constructor, since the other metadata contained in the given object are not recursively copied.
        Parameters:
        object - the metadata to copy values from, or null if none.
        See Also:
        cast­Or­Copy(Identifier)
    • Method Detail

      • castOrCopy

        public static DefaultIdentifier castOrCopy​(Identifier object)
        Returns a SIS metadata implementation with the values of the given arbitrary implementation. This method performs the first applicable action in the following choices:
        • If the given object is null, then this method returns null.
        • Otherwise if the given object is already an instance of Default­Identifier, then it is returned unchanged.
        • Otherwise a new Default­Identifier instance is created using the copy constructor and returned. Note that this is a shallow copy operation, since the other metadata contained in the given object are not recursively copied.
        Parameters:
        object - the object to get as a SIS implementation, or null if none.
        Returns:
        a SIS implementation containing the values of the given object (may be the given object itself), or null if the argument was null.
      • getAuthority

        public Citation getAuthority()
        Returns the person or party responsible for maintenance of the namespace. The organization's abbreviation is often the same than this identifier code space, but not necessarily.
        Specified by:
        get­Authority in interface Identifier
        Returns:
        person or party responsible for maintenance of the namespace, or null if not available.
      • setAuthority

        public void setAuthority​(Citation newValue)
        Sets the person or party responsible for maintenance of the namespace.
        Parameters:
        new­Value - the new authority.
      • getCode

        public String getCode()
        Returns the alphanumeric value identifying an instance in the namespace. The code is optionally from a controlled list or pattern.
        Example: "4326".
        The code is mandatory according ISO specification, but this Default­Identifier implementation does not enforce this restriction.
        Specified by:
        get­Code in interface Identifier
        Returns:
        value identifying an instance in the namespace.
      • setCode

        public void setCode​(String newValue)
        Sets the alphanumeric value identifying an instance in the namespace. Should avoid characters that are not legal in URLs.
        Parameters:
        new­Value - the new code, or null.
      • getCodeSpace

        @UML(identifier="codeSpace",
             obligation=OPTIONAL,
             specification=ISO_19115)
        public String getCodeSpace()
        Returns the identifier or namespace in which the code is valid. This is often the authority's abbreviation, but not necessarily.
        Example: "EPSG".
        Returns:
        the identifier or namespace in which the code is valid, or null if none.
        Since:
        0.5
      • setCodeSpace

        public void setCodeSpace​(String newValue)
        Sets the identifier or namespace in which the code is valid.
        Parameters:
        new­Value - the new code space, or null if none.
        Since:
        0.5
      • getVersion

        @UML(identifier="version",
             obligation=OPTIONAL,
             specification=ISO_19115)
        public String getVersion()
        Returns the version identifier for the namespace, as specified by the code authority. This version is included only when the code uses versions. When appropriate, the edition is identified by the effective date, coded using ISO 8601 date format.
        Example: the version of the underlying EPSG database.
        Returns:
        the version identifier for the namespace, or null if none.
      • setVersion

        public void setVersion​(String newValue)
        Sets the version identifier for the namespace.
        Parameters:
        new­Value - the new version, or null if none.
      • setDescription

        public void setDescription​(InternationalString newValue)
        Sets the natural language description of the meaning of the code value.
        Parameters:
        new­Value - the new natural language description, or null if none.
        Since:
        0.5