|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.geotools.referencing.FactoryFinder
Defines static methods used to access the application's default factory implementation.
To declare a factory implementation, a services subdirectory is placed within the
directory that is present in every JAR file. This directory
contains a file for each factory interface that has one or more implementation classes
present in the JAR file. For example, if the JAR file contained a class named
which implements the DatumFactory
interface, the JAR file would contain a file named:
META-INF/services/org.opengis.referencing.datum.DatumFactory
containing the line:
com.mycompany.DatumFactoryImpl
If the factory classes implements RegisterableService
, it will be notified upon
registration and deregistration. Note that the factory classes should be lightweight and quick
to load. Implementations of these interfaces should avoid complex dependencies on other classes
and on native code. The usual pattern for more complex services is to register a lightweight
proxy for the heavyweight service.
This class is thread-safe. However, calls to any setAuthorityOrdering(java.lang.String, java.lang.String)
or
setVendorOrdering(java.lang.String, java.lang.String)
methods have a system-wide effect. If two threads or two
applications need a different ordering, they shall manage their own instance of
FactoryRegistry
. This class is simply a convenience
wrapper around a instance.
Method Summary | |
static void |
addAuthorityFactory(org.opengis.referencing.AuthorityFactory authority)
Programmatic management of authority factories. |
static java.util.Set |
getAuthorityNames()
Returns the names of all currently registered authorities. |
static java.util.Set |
getCoordinateOperationAuthorityFactories()
Returns a set of all available implementations for the CoordinateOperationAuthorityFactory interface. |
static org.opengis.referencing.operation.CoordinateOperationAuthorityFactory |
getCoordinateOperationAuthorityFactory(java.lang.String authority,
Hints hints)
Returns the first implementation of CoordinateOperationAuthorityFactory matching
the specified hints. |
static java.util.Set |
getCoordinateOperationFactories()
Returns a set of all available implementations for the CoordinateOperationFactory interface. |
static org.opengis.referencing.operation.CoordinateOperationFactory |
getCoordinateOperationFactory(Hints hints)
Returns the first implementation of CoordinateOperationFactory matching the specified
hints. |
static java.util.Set |
getCRSAuthorityFactories()
Returns a set of all available implementations for the CRSAuthorityFactory interface.
|
static org.opengis.referencing.crs.CRSAuthorityFactory |
getCRSAuthorityFactory(java.lang.String authority,
Hints hints)
Returns the first implementation of CRSAuthorityFactory matching the specified
hints. |
static java.util.Set |
getCRSFactories()
Returns a set of all available implementations for the CRSFactory interface. |
static org.opengis.referencing.crs.CRSFactory |
getCRSFactory(Hints hints)
Returns the first implementation of CRSFactory matching the specified hints.
|
static java.util.Set |
getCSAuthorityFactories()
Returns a set of all available implementations for the CSAuthorityFactory interface. |
static org.opengis.referencing.cs.CSAuthorityFactory |
getCSAuthorityFactory(java.lang.String authority,
Hints hints)
Returns the first implementation of CSAuthorityFactory matching the specified
hints. |
static java.util.Set |
getCSFactories()
Returns a set of all available implementations for the CSFactory interface. |
static org.opengis.referencing.cs.CSFactory |
getCSFactory(Hints hints)
Returns the first implementation of CSFactory matching the specified hints.
|
static java.util.Set |
getDatumAuthorityFactories()
Returns a set of all available implementations for the DatumAuthorityFactory
interface. |
static org.opengis.referencing.datum.DatumAuthorityFactory |
getDatumAuthorityFactory(java.lang.String authority,
Hints hints)
Returns the first implementation of DatumAuthorityFactory matching the specified
hints. |
static java.util.Set |
getDatumFactories()
Returns a set of all available implementations for the DatumFactory interface. |
static org.opengis.referencing.datum.DatumFactory |
getDatumFactory(Hints hints)
Returns the first implementation of DatumFactory matching the specified hints.
|
static java.util.Set |
getMathTransformFactories()
Returns a set of all available implementations for the MathTransformFactory interface. |
static org.opengis.referencing.operation.MathTransformFactory |
getMathTransformFactory(Hints hints)
Returns the first implementation of MathTransformFactory matching the specified
hints. |
static void |
listProviders(java.io.Writer out,
java.util.Locale locale)
List all available factory implementations in a tabular format. |
static void |
main(java.lang.String[] args)
Dump to the standard output stream a list of available factory implementations. |
static void |
removeAuthorityFactory(org.opengis.referencing.AuthorityFactory authority)
Programmatic management of authority factories. |
static void |
scanForPlugins()
Scans for factory plug-ins on the application class path. |
static boolean |
setAuthorityOrdering(java.lang.String authority1,
java.lang.String authority2)
Sets a pairwise ordering between two authorities. |
static boolean |
setVendorOrdering(java.lang.String vendor1,
java.lang.String vendor2)
Sets a pairwise ordering between two vendors. |
static boolean |
unsetAuthorityOrdering(java.lang.String authority1,
java.lang.String authority2)
Unsets a pairwise ordering between two authorities. |
static boolean |
unsetVendorOrdering(java.lang.String vendor1,
java.lang.String vendor2)
Unsets a pairwise ordering between two vendors. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
public static void addAuthorityFactory(org.opengis.referencing.AuthorityFactory authority)
authority
- The authority factory to add.public static void removeAuthorityFactory(org.opengis.referencing.AuthorityFactory authority)
authority
- The authority factory to remove.public static java.util.Set getAuthorityNames()
public static org.opengis.referencing.datum.DatumFactory getDatumFactory(Hints hints) throws FactoryRegistryException
DatumFactory
matching the specified hints.
If no implementation matches, a new one is created if possible or an exception is thrown
otherwise. If more than one implementation is registered and an
ordering is set, then the preferred
implementation is returned. Otherwise an arbitrary one is selected.
hints
- An optional map of hints, or if none.
FactoryRegistryException
- if no implementation was found or can be created for the
DatumFactory
interface.public static java.util.Set getDatumFactories()
DatumFactory
interface.
public static org.opengis.referencing.cs.CSFactory getCSFactory(Hints hints) throws FactoryRegistryException
CSFactory
matching the specified hints.
If no implementation matches, a new one is created if possible or an exception is thrown
otherwise. If more than one implementation is registered and an
ordering is set, then the preferred
implementation is returned. Otherwise an arbitrary one is selected.
hints
- An optional map of hints, or if none.
FactoryRegistryException
- if no implementation was found or can be created for the
CSFactory
interface.public static java.util.Set getCSFactories()
CSFactory
interface.
public static org.opengis.referencing.crs.CRSFactory getCRSFactory(Hints hints) throws FactoryRegistryException
CRSFactory
matching the specified hints.
If no implementation matches, a new one is created if possible or an exception is thrown
otherwise. If more than one implementation is registered and an
ordering is set, then the preferred
implementation is returned. Otherwise an arbitrary one is selected.
hints
- An optional map of hints, or if none.
FactoryRegistryException
- if no implementation was found or can be created for the
CRSFactory
interface.public static java.util.Set getCRSFactories()
CRSFactory
interface.
public static org.opengis.referencing.operation.CoordinateOperationFactory getCoordinateOperationFactory(Hints hints) throws FactoryRegistryException
CoordinateOperationFactory
matching the specified
hints. If no implementation matches, a new one is created if possible or an exception is
thrown otherwise. If more than one implementation is registered and an
ordering is set, then the preferred
implementation is returned. Otherwise an arbitrary one is selected.
Hints that may be understood includes
MATH_TRANSFORM_FACTORY
,
DATUM_SHIFT_METHOD
and
LENIENT_DATUM_SHIFT
.
hints
- An optional map of hints, or if none.
FactoryRegistryException
- if no implementation was found or can be created for the
CoordinateOperationFactory
interface.public static java.util.Set getCoordinateOperationFactories()
CoordinateOperationFactory
interface.
public static org.opengis.referencing.datum.DatumAuthorityFactory getDatumAuthorityFactory(java.lang.String authority, Hints hints) throws FactoryRegistryException
DatumAuthorityFactory
matching the specified
hints. If no implementation matches, a new one is created if possible or an exception is
thrown otherwise. If more than one implementation is registered and an
ordering is set, then the preferred
implementation is returned. Otherwise an arbitrary one is selected.
authority
- The desired authority (e.g. "EPSG").hints
- An optional map of hints, or if none.
FactoryRegistryException
- if no implementation was found or can be created for the
DatumAuthorityFactory
interface.public static java.util.Set getDatumAuthorityFactories()
DatumAuthorityFactory
interface.
public static org.opengis.referencing.cs.CSAuthorityFactory getCSAuthorityFactory(java.lang.String authority, Hints hints) throws FactoryRegistryException
CSAuthorityFactory
matching the specified
hints. If no implementation matches, a new one is created if possible or an exception is
thrown otherwise. If more than one implementation is registered and an
ordering is set, then the preferred
implementation is returned. Otherwise an arbitrary one is selected.
authority
- The desired authority (e.g. "EPSG").hints
- An optional map of hints, or if none.
FactoryRegistryException
- if no implementation was found or can be created for the
CSAuthorityFactory
interface.public static java.util.Set getCSAuthorityFactories()
CSAuthorityFactory
interface.
public static org.opengis.referencing.crs.CRSAuthorityFactory getCRSAuthorityFactory(java.lang.String authority, Hints hints) throws FactoryRegistryException
CRSAuthorityFactory
matching the specified
hints. If no implementation matches, a new one is created if possible or an exception is
thrown otherwise. If more than one implementation is registered and an
ordering is set, then the preferred
implementation is returned. Otherwise an arbitrary one is selected.
authority
- The desired authority (e.g. "EPSG").hints
- An optional map of hints, or if none.
FactoryRegistryException
- if no implementation was found or can be created for the
CRSAuthorityFactory
interface.public static java.util.Set getCRSAuthorityFactories()
CRSAuthorityFactory
interface.
This set can be used to list the available codes known to all authorities.
In the event that the same code is understood by more then one authority
you will need to assume both are close enough, or make use of this set directly
rather than use the CRS.decode(java.lang.String)
convenience method.
public static org.opengis.referencing.operation.CoordinateOperationAuthorityFactory getCoordinateOperationAuthorityFactory(java.lang.String authority, Hints hints) throws FactoryRegistryException
CoordinateOperationAuthorityFactory
matching
the specified hints. If no implementation matches, a new one is created if possible or an
exception is thrown otherwise. If more than one implementation is registered and an
ordering is set, then the preferred
implementation is returned. Otherwise an arbitrary one is selected.
authority
- The desired authority (e.g. "EPSG").hints
- An optional map of hints, or if none.
FactoryRegistryException
- if no implementation was found or can be created for the
CoordinateOperationAuthorityFactory
interface.public static java.util.Set getCoordinateOperationAuthorityFactories()
CoordinateOperationAuthorityFactory
interface.
public static org.opengis.referencing.operation.MathTransformFactory getMathTransformFactory(Hints hints) throws FactoryRegistryException
MathTransformFactory
matching the specified
hints. If no implementation matches, a new one is created if possible or an exception is
thrown otherwise. If more than one implementation is registered and an
ordering is set, then the preferred
implementation is returned. Otherwise an arbitrary one is selected.
hints
- An optional map of hints, or if none.
FactoryRegistryException
- if no implementation was found or can be created for the
MathTransformFactory
interface.public static java.util.Set getMathTransformFactories()
MathTransformFactory
interface.
public static boolean setVendorOrdering(java.lang.String vendor1, java.lang.String vendor2)
The example below said that an ESRI implementation (if available) is preferred over the Geotools one:
FactoryFinder.setVendorOrdering("ESRI", "Geotools");
vendor1
- The preferred vendor.vendor2
- The vendor to which is preferred.
public static boolean unsetVendorOrdering(java.lang.String vendor1, java.lang.String vendor2)
vendor1
- The preferred vendor.vendor2
- The vendor to which is preferred.
public static boolean setAuthorityOrdering(java.lang.String authority1, java.lang.String authority2)
The example below said that EPSG authority factories are preferred over ESRI ones:
FactoryFinder.setAuthorityOrdering("EPSG", "ESRI");
authority1
- The preferred authority.authority2
- The authority to which is preferred.
public static boolean unsetAuthorityOrdering(java.lang.String authority1, java.lang.String authority2)
authority1
- The preferred authority.authority2
- The vendor to which is preferred.
public static void scanForPlugins()
public static void listProviders(java.io.Writer out, java.util.Locale locale) throws java.io.IOException
out
- The output stream where to format the list.locale
- The locale for the list, or .
java.io.IOException
- if an error occurs while writting to .public static void main(java.lang.String[] args)
java org.geotools.referencing.FactoryFinder <options>
where options are:
-encoding <code> |
Set the character encoding |
-locale <language> |
Set the language for the output (e.g. "fr" for French) |
Note for Windows users: If the output contains strange symbols, try to supply an "" argument. Example:
java org.geotools.referencing.FactoryFinder -encoding Cp850
The codepage number (850 in the previous example) can be obtained from the DOS commande line using the "" command with no arguments. This argument need to be supplied only once.
args
- Command line arguments.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |