- All Superinterfaces:
Factory
- All Known Subinterfaces:
CoordinateOperationAuthorityFactory
,CRSAuthorityFactory
,CSAuthorityFactory
,DatumAuthorityFactory
@UML(identifier="CS_CoordinateSystemAuthorityFactory",
specification=OGC_01009)
public interface AuthorityFactory
extends Factory
Base interface for all authority factories. An authority is an
organization that maintains definitions of authority codes. An authority
code is a compact string defined by an authority to reference a particular
spatial reference object. For example the
European Petroleum Survey Group (EPSG) maintains
a database of coordinate systems, and other spatial referencing objects, where each
object has a code number ID. For example, the EPSG code for a WGS84 Lat/Lon coordinate
system is '4326'.
- Since:
- 1.0
-
Method Summary
Modifier and TypeMethodDescriptioncreateObject
(String code) Returns an arbitrary object from a code.Returns the organization or party responsible for definition and maintenance of the database.getAuthorityCodes
(Class<? extends IdentifiedObject> type) Returns the set of authority codes of the given type.getDescriptionText
(String code) Gets a description of the object corresponding to a code.
-
Method Details
-
getAuthority
Returns the organization or party responsible for definition and maintenance of the database.- Returns:
- The organization responsible for definition of the database.
-
getAuthorityCodes
Returns the set of authority codes of the given type. Thetype
argument specifies the base class. For example if this factory is an instance ofCRSAuthorityFactory
, then:CoordinateReferenceSystem.class
asks for all authority codes accepted by one ofcreateGeographicCRS
,createProjectedCRS
,createVerticalCRS
,createTemporalCRS
and any other method returning a sub-type ofCoordinateReferenceSystem
.ProjectedCRS.class
asks only for authority codes accepted bycreateProjectedCRS
.
- Parameters:
type
- The spatial reference objects type.- Returns:
- The set of authority codes for spatial reference objects of the given type. If this factory doesn't contains any object of the given type, then this method returns an empty set.
- Throws:
FactoryException
- if access to the underlying database failed.- Departure from OGC/ISO abstract specification:
Addition of element not in the ISO/OGC specification
This method is not part of the OGC specification but has been added as a way to publish the capabilities of a factory.
-
getDescriptionText
@UML(identifier="descriptionText", specification=OGC_01009) InternationalString getDescriptionText(String code) throws NoSuchAuthorityCodeException, FactoryException Gets a description of the object corresponding to a code.- Parameters:
code
- Value allocated by authority.- Returns:
- A description of the object, or
null
if the object corresponding to the specifiedcode
has no description. - Throws:
NoSuchAuthorityCodeException
- if the specifiedcode
was not found.FactoryException
- if the query failed for some other reason.
-
createObject
Returns an arbitrary object from a code. The returned object will typically be an instance ofDatum
,CoordinateSystem
,ReferenceSystem
orCoordinateOperation
. If the type of the object is know at compile time, it is recommended to invoke the most precise method instead of this one (for examplecreateCoordinateReferenceSystem(code)
instead ofcreateObject(code)
if the caller know he is asking for a coordinate reference system).- Parameters:
code
- Value allocated by authority.- Returns:
- The object for the given code.
- Throws:
NoSuchAuthorityCodeException
- if the specifiedcode
was not found.FactoryException
- if the object creation failed for some other reason.- See Also:
- Departure from OGC/ISO abstract specification:
Generalization by relaxation of ISO/OGC restriction
This method is not part of the OGC specification. It has been added to leverage the capability of factories that can automatically determine the type of the requested object at runtime.
-