Class FeatureIdVersionedImpl

  • All Implemented Interfaces:
    FeatureId, Identifier
    Direct Known Subclasses:
    ResourceIdImpl

    public class FeatureIdVersionedImpl
    extends FeatureIdImpl
    Implementation of FeatureId

    This class is mutable under one condition only; during a commit a datastore can update the internal fid to reflect the real identify assigned by the database or wfs.

    Since:
    2.5
    Author:
    Justin Deoliveira, The Open Planning Project
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(Object obj)
      Identifier is a data object, equals is based just on getID()
      boolean equalsExact​(FeatureId id)
      Check if the provided FeatureId is an exact match (including any optional version information).
      boolean equalsFID​(FeatureId id)
      Checks if the provided FeatureId reflects the same feature.
      String getFeatureVersion()
      Version identifier for the feature instance, may be null
      String getPreviousRid()
      previousRid attribute may be used, in implementations that support versioning, to report the previous identifier of a resource.
      String getRid()
      id of the resource that shall be selected by the predicate.
      int hashCode()
      Identifier is a data object, hashCode is based just on getID()
      String toString()
      Returns a string representation of the identifier.
      • Methods inherited from class Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Field Detail

      • featureVersion

        protected String featureVersion
      • previousRid

        protected String previousRid
    • Constructor Detail

      • FeatureIdVersionedImpl

        public FeatureIdVersionedImpl​(String fid,
                                      String version)
      • FeatureIdVersionedImpl

        public FeatureIdVersionedImpl​(String fid,
                                      String version,
                                      String previousRid)
    • Method Detail

      • toString

        public String toString()
        Description copied from interface: Identifier
        Returns a string representation of the identifier.
        Specified by:
        toString in interface Identifier
        Overrides:
        toString in class FeatureIdImpl
        Returns:
        getID().toString()
      • equals

        public boolean equals​(Object obj)
        Description copied from interface: Identifier
        Identifier is a data object, equals is based just on getID()
        Specified by:
        equals in interface Identifier
        Overrides:
        equals in class FeatureIdImpl
        Returns:
        true if obj is an Identifier with the same getID()
      • hashCode

        public int hashCode()
        Description copied from interface: Identifier
        Identifier is a data object, hashCode is based just on getID()
        Specified by:
        hashCode in interface Identifier
        Overrides:
        hashCode in class FeatureIdImpl
        Returns:
        hashCode based on getID()
      • equalsExact

        public boolean equalsExact​(FeatureId id)
        Description copied from interface: FeatureId
        Check if the provided FeatureId is an exact match (including any optional version information).
        Specified by:
        equalsExact in interface FeatureId
        Overrides:
        equalsExact in class FeatureIdImpl
        Returns:
        true if this is an exact match (including any optional version information)
      • equalsFID

        public boolean equalsFID​(FeatureId id)
        Description copied from interface: FeatureId
        Checks if the provided FeatureId reflects the same feature.

        This comparison does not compare any optional version information.

        Specified by:
        equalsFID in interface FeatureId
        Overrides:
        equalsFID in class FeatureIdImpl
        Returns:
        true if both identifiers describe the same feature (does not compare version information).
      • getRid

        public String getRid()
        Description copied from interface: FeatureId
        id of the resource that shall be selected by the predicate.

        Equals to FeatureId.getID() if no feature version is provided, or getID() + "@" + getFeatureVersion() if getFeatureVersion() != null

        If an implementation that references this International Standard supports versioning, the rid shall be a system generated hash containing a logical resource identifier and a version number. The specific details of the hash are implementation dependant and shall be opaque to a client

        If versioning is not supported, the same value than FeatureId.getID() shall be returned.

        Specified by:
        getRid in interface FeatureId
        Overrides:
        getRid in class FeatureIdImpl
        Returns:
        Resource identifier made up of FID (combined with FeatureVersion if available)
      • getPreviousRid

        public String getPreviousRid()
        Description copied from interface: FeatureId
        previousRid attribute may be used, in implementations that support versioning, to report the previous identifier of a resource.
        Specified by:
        getPreviousRid in interface FeatureId
        Overrides:
        getPreviousRid in class FeatureIdImpl
        Returns:
        Previous rid if available; or null