Class DefaultScopedName

Object
AbstractName
DefaultScopedName
All Implemented Interfaces:
Serializable, Comparable<Generic­Name>, Generic­Name, Scoped­Name

public class DefaultScopedName extends AbstractName implements ScopedName
A composite of a name space (as a local name) and a generic name valid in that name space. See the GeoAPI javadoc for more information.

Default­Scoped­Name can be instantiated by any of the following methods:

Immutability and thread safety

This class is immutable and thus inherently thread-safe if the Name­Space and all Char­Sequence elements in the arguments given to the constructor are also immutable. Subclasses shall make sure that any overridden methods remain safe to call from multiple threads and do not change any public Local­Name state.
Since:
0.3
See Also:
  • Constructor Details

    • DefaultScopedName

      protected DefaultScopedName(NameSpace scope, List<? extends CharSequence> names)
      Constructs a scoped name from the specified list of strings. If any of the given names is an instance of International­String, then its to­String(Locale​.ROOT) method will be invoked for fetching an unlocalized name. Otherwise the Char­Sequence​.to­String() method will be used.
      Parameters:
      scope - the scope of this name, or null for the global scope.
      names - the local names. This list must have at least two elements.
    • DefaultScopedName

      protected DefaultScopedName(GenericName path, GenericName tail)
      Constructs a scoped name as the concatenation of the given generic names. The scope of the new name will be the scope of the path argument.
      Parameters:
      path - the first part to concatenate.
      tail - the second part to concatenate.
    • DefaultScopedName

      protected DefaultScopedName(GenericName path, String separator, CharSequence tail)
      Constructs a scoped name as the concatenation of the given generic name with a single character sequence. The scope of the new name will be the scope of the path argument. The tail is a local name created from the given character sequence.
      Parameters:
      path - the first part to concatenate.
      separator - the separator between the head and the tail, or null for inheriting the same separator than the given path.
      tail - the second part to concatenate.
      Since:
      0.8
      See Also:
  • Method Details

    • scope

      public NameSpace scope()
      Returns the scope (name space) in which this name is local. For example if a fully qualified name is "org​.opengis​.util​.Record" and if this instance is the "util​.Record" part, then its scope is named "org​.opengis".

      Continuing with the above example, the full "org​.opengis​.util​.Record" name has no scope. If this method is invoked on such name, then the SIS implementation returns a global scope instance (i.e. an instance for which Default­Name­Space​.is­Global() returns true) which is unique and named "global".

      Specified by:
      scope in interface Generic­Name
      Specified by:
      scope in class Abstract­Name
      Returns:
      the scope of this name.
    • tail

      public GenericName tail()
      Returns every elements in the sequence of parsed names except for the head.
      Specified by:
      tail in interface Scoped­Name
      Returns:
      all elements except the first one in the in the list of parsed names.
    • path

      public GenericName path()
      Returns every element in the sequence of parsed names except for the tip.
      Specified by:
      path in interface Scoped­Name
      Returns:
      all elements except the last one in the in the list of parsed names.
    • getParsedNames

      public List<? extends LocalName> getParsedNames()
      Returns the sequence of local name for this generic name.
      Specified by:
      get­Parsed­Names in interface Generic­Name
      Specified by:
      get­Parsed­Names in class Abstract­Name
      Returns:
      the local names making this generic name, without the scope. Shall never be null neither empty.