Package org.geotools.api.util
Interface NameFactory
public interface NameFactory
Factory for generic names and international strings.
Implementation note: despite the "create" name, implementations may return cached instances.
- Since:
- GeoAPI 2.0
- Author:
- Jesse Crossley (SYS Technologies), Martin Desruisseaux (Geomatys)
-
Method Summary
Modifier and TypeMethodDescriptioncreateGenericName(NameSpace scope, CharSequence... parsedNames) Creates a local or scoped name from an array of parsed names.createInternationalString(Map<Locale, String> strings) Creates an international string from a set of strings in different locales.createLocalName(NameSpace scope, CharSequence name) Creates a local name from the given character sequence.createNameSpace(GenericName name, String headSeparator, String separator) Creates a namespace having the given name and separators.parseGenericName(NameSpace scope, CharSequence name) Constructs a generic name from a qualified name.
-
Method Details
-
createInternationalString
Creates an international string from a set of strings in different locales.- Parameters:
strings- String value for each locale key.- Returns:
- The international string.
-
createNameSpace
Creates a namespace having the given name and separators.Implementation note: despite the "create" name, implementations may return existing instances.
- Parameters:
name- The name of the namespace to be returned. This argument can be created usingcreateGenericName(null, parsedNames).headSeparator- The separator to insert between the namespace and the head. For HTTP namespace, it is"://". For URN namespace, it is typically":".separator- The separator to insert between parsed names in that namespace. For HTTP namespace, it is".". For URN namespace, it is typically":".- Returns:
- A namespace having the given name and separators.
- Since:
- GeoAPI 2.2
-
createLocalName
Creates a local name from the given character sequence. The character sequence can be either aStringor anInternationalStringinstance. In the later case, implementations can use an arbitrary locale (typicallyENGLISH, but not necessarly) for the unlocalized string to be returned byLocalName.toString().- Parameters:
scope- The scope of the local name to be created, ornullfor a global namespace.name- The local name as a string or an international string.- Returns:
- The local name for the given character sequence.
- Since:
- GeoAPI 2.2
-
createGenericName
Creates a local or scoped name from an array of parsed names. The array elements can be eitherStringorInternationalStringinstances. In the later case, implementations can use an arbitrary locale (typicallyENGLISH, but not necessarly) for the unlocalized string to be returned byGenericName.toString().If the length of the
parsedNamesarray is 1, then this method returns an instance ofLocalName. If the length is 2 or more, then this method returns an instance ofScopedName.- Parameters:
scope- The scope of the generic name to be created, ornullfor a global namespace.parsedNames- The local names as an array of strings or international strings. This array must contains at least one element.- Returns:
- The generic name for the given parsed names.
- Since:
- GeoAPI 2.2
-
parseGenericName
Constructs a generic name from a qualified name. This method splits the given name around a separator inferred from the given scope, or an implementation-dependant default separator if the given scope is null.For example if the
scopeargument is the namespace"urn:ogc:def"with":"as the separator, and if thenameargument is the string"crs:epsg:4326", then the result is a scoped name having a depth of 3, which is the length of the list of parsed names ("crs","epsg","4326").- Parameters:
scope- The scope of the generic name to be created, ornullfor a global namespace.name- The qualified name, as a sequence of names separated by a scope-dependant separator.- Returns:
- A name parsed from the given string.
- Since:
- GeoAPI 2.2
-