Class FactoryUsingAnsiSQL
-
- All Implemented Interfaces:
AuthorityFactory
,CRSAuthorityFactory
,CSAuthorityFactory
,DatumAuthorityFactory
,Factory
,CoordinateOperationAuthorityFactory
,Factory
,RegistrableFactory
public class FactoryUsingAnsiSQL extends FactoryUsingSQL
An EPSG factory for the database generated by SQL scripts rather than the MS-Access one.- Since:
- 2.1
- Author:
- Rueben Schulz, Martin Desruisseaux, Didier Richard, John Grange
-
-
Field Summary
Fields Modifier and Type Field Description protected Map<String,String>
map
Maps the MS-Access names to ANSI names.-
Fields inherited from class DirectAuthorityFactory
factories
-
Fields inherited from class ReferencingFactory
LOGGER
-
Fields inherited from class AbstractFactory
hints, MAXIMUM_PRIORITY, MINIMUM_PRIORITY, NORMAL_PRIORITY, priority
-
-
Constructor Summary
Constructors Constructor Description FactoryUsingAnsiSQL(Hints userHints, Connection connection)
Constructs an authority factory using the specified connection.FactoryUsingAnsiSQL(Hints userHints, DataSource dataSource)
Constructs an authority factory using the specified source.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected String
adaptSQL(String statement)
Modifies the given SQL string to be suitable for non MS-Access databases.void
setSchema(String schema)
Replaces the"epsg_"
prefix by the specified schema name.-
Methods inherited from class DirectEpsgFactory
createCoordinateOperation, createCoordinateReferenceSystem, createCoordinateSystem, createCoordinateSystemAxis, createDatum, createEllipsoid, createExtent, createFromCoordinateReferenceSystemCodes, createObject, createOperationMethod, createParameterDescriptor, createPrimeMeridian, createUnit, dispose, finalize, getAuthority, getAuthorityCodes, getBackingStoreDescription, getConnection, getDescriptionText, getIdentifiedObjectFinder, getImplementationHints, getValidationQuery, isConnectionValid, isPrimaryKey, setValidationQuery, shutdown
-
Methods inherited from class AbstractAuthorityFactory
createCartesianCS, createCompoundCRS, createCylindricalCS, createDerivedCRS, createEllipsoidalCS, createEngineeringCRS, createEngineeringDatum, createGeocentricCRS, createGeodeticDatum, createGeographicCRS, createImageCRS, createImageDatum, createPolarCS, createProjectedCRS, createSphericalCS, createTemporalCRS, createTemporalDatum, createTimeCS, createVerticalCRS, createVerticalCS, createVerticalDatum, noSuchAuthorityCode, trimAuthority
-
Methods inherited from class ReferencingFactory
ensureNonNull, getVendor
-
Methods inherited from class AbstractFactory
addImplementationHints, equals, getPriority, hashCode, onDeregistration, onRegistration, toString
-
Methods inherited from interface CRSAuthorityFactory
createCompoundCRS, createDerivedCRS, createEngineeringCRS, createGeocentricCRS, createGeographicCRS, createImageCRS, createProjectedCRS, createTemporalCRS, createVerticalCRS
-
Methods inherited from interface CSAuthorityFactory
createCartesianCS, createCylindricalCS, createEllipsoidalCS, createPolarCS, createSphericalCS, createTimeCS, createVerticalCS
-
Methods inherited from interface DatumAuthorityFactory
createEngineeringDatum, createGeodeticDatum, createImageDatum, createTemporalDatum, createVerticalDatum
-
-
-
-
Field Detail
-
map
protected final Map<String,String> map
Maps the MS-Access names to ANSI names. Keys are MS-Access names including bracket. Values are ANSI names. Keys and values are case-sensitive. The default content of this map is:MS-Access name ANSI name [Alias] epsg_alias [Area] epsg_area [Coordinate Axis] epsg_coordinateaxis [Coordinate Axis Name] epsg_coordinateaxisname [Coordinate_Operation] epsg_coordoperation [Coordinate_Operation Method] epsg_coordoperationmethod [Coordinate_Operation Parameter] epsg_coordoperationparam [Coordinate_Operation Parameter Usage] epsg_coordoperationparamusage [Coordinate_Operation Parameter Value] epsg_coordoperationparamvalue [Coordinate_Operation Path] epsg_coordoperationpath [Coordinate Reference System] epsg_coordinatereferencesystem [Coordinate System] epsg_coordinatesystem [Datum] epsg_datum [Naming System] epsg_namingsystem [Ellipsoid] epsg_ellipsoid [Prime Meridian] epsg_primemeridian [Supersession] epsg_supersession [Unit of Measure] epsg_unitofmeasure [CA.ORDER] coord_axis_order
-
-
Constructor Detail
-
FactoryUsingAnsiSQL
public FactoryUsingAnsiSQL(Hints userHints, Connection connection)
Constructs an authority factory using the specified connection.- Parameters:
userHints
- The underlying factories used for objects creation.connection
- The connection to the underlying EPSG database.- Since:
- 2.2
-
FactoryUsingAnsiSQL
public FactoryUsingAnsiSQL(Hints userHints, DataSource dataSource)
Constructs an authority factory using the specified source.- Parameters:
userHints
- The underlying factories used for objects creation.dataSource
- The connection to the underlying EPSG database.- Since:
- 2.5
-
-
Method Detail
-
setSchema
public void setSchema(String schema)
Replaces the"epsg_"
prefix by the specified schema name. If the removal of the"epsg_"
prefix is not wanted, append it to the schema name (e.g."myschema.epsg_"
). This method should be invoked at construction time only.- Parameters:
schema
- The database schema in which the epsg tables are stored.- Since:
- 2.2
-
adaptSQL
protected String adaptSQL(String statement)
Modifies the given SQL string to be suitable for non MS-Access databases. This replaces table and field names in the SQL with the new names in the SQL DDL scripts provided with EPSG database.- Overrides:
adaptSQL
in classFactoryUsingSQL
- Parameters:
statement
- The statement in MS-Access syntax.- Returns:
- The SQL statement in ANSI syntax.
-
-