public abstract class JDBCJNDIDataStoreFactory extends JDBCDataStoreFactory
Subclasses should not need to override any methods, only just call the parent constructor passing in the non JNDI datastore factory to delegate to.
DataAccessFactory.Param| Modifier and Type | Field and Description |
|---|---|
protected JDBCDataStoreFactory |
delegate
regular datastore factory to delegate to.
|
static String |
J2EERootContext |
static DataAccessFactory.Param |
JNDI_REFNAME
JNDI data source name
|
BATCH_INSERT_SIZE, CALLBACK_FACTORY, DATABASE, DATASOURCE, DBTYPE, EVICTOR_TESTS_PER_RUN, EXPOSE_PK, FETCHSIZE, HOST, MAX_OPEN_PREPARED_STATEMENTS, MAXCONN, MAXWAIT, MIN_EVICTABLE_TIME, MINCONN, NAMESPACE, PASSWD, PK_METADATA_TABLE, PORT, SCHEMA, SQL_ON_BORROW, SQL_ON_RELEASE, TEST_WHILE_IDLE, TIME_BETWEEN_EVICTOR_RUNS, USER, VALIDATECONN| Modifier | Constructor and Description |
|---|---|
protected |
JDBCJNDIDataStoreFactory(JDBCDataStoreFactory delegate) |
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
checkDBType(Map params) |
protected DataSource |
createDataSource(Map params,
SQLDialect dialect)
Override to create the datasource from the external JNDI conection.
|
protected JDBCDataStore |
createDataStoreInternal(JDBCDataStore dataStore,
Map params)
Subclass hook to do additional initialization of a newly created datastore.
|
DataStore |
createNewDataStore(Map params) |
protected SQLDialect |
createSQLDialect(JDBCDataStore dataStore)
Creates the dialect that the datastore uses for communication with the underlying database.
|
protected String |
getDatabaseID()
Returns a string to identify the type of the database.
|
String |
getDescription()
Describe the nature of the datasource constructed by this factory.
|
String |
getDisplayName()
Name suitable for display to end user.
|
protected String |
getDriverClassName()
Override which explicitly returns null because with a JNDI connection the driver is not known
ahead of time.
|
Map |
getImplementationHints()
Returns the implementation hints for the datastore.
|
protected String |
getJDBCUrl(Map params)
Override which explicitly returns null since there is no jdbc url, the connection is
identified by the JNDI name.
|
protected String |
getValidationQuery()
Override which explicitly returns null, validation queries are not supported, my be part of
the external data source configuration
|
boolean |
isAvailable()
Determines if the datastore is available.
|
protected void |
setupParameters(Map parameters)
Override to omit all those parameters which define the creation of the connection.
|
canProcess, checkDBType, createDataSource, createDataStore, getParametersInfopublic static final String J2EERootContext
public static final DataAccessFactory.Param JNDI_REFNAME
protected JDBCDataStoreFactory delegate
protected JDBCJNDIDataStoreFactory(JDBCDataStoreFactory delegate)
protected String getDriverClassName()
getDriverClassName in class JDBCDataStoreFactoryprotected String getValidationQuery()
getValidationQuery in class JDBCDataStoreFactoryprotected String getJDBCUrl(Map params) throws IOException
getJDBCUrl in class JDBCDataStoreFactoryIOExceptionprotected DataSource createDataSource(Map params, SQLDialect dialect) throws IOException
createDataSource in class JDBCDataStoreFactoryIOExceptionpublic boolean isAvailable()
Check in an Initial Context is available, that is all what can be done Checking for the right jdbc jars in the classpath is not possible here
isAvailable in interface DataAccessFactoryisAvailable in class JDBCDataStoreFactoryprotected void setupParameters(Map parameters)
setupParameters in class JDBCDataStoreFactoryparameters - Map of Param objects.protected String getDatabaseID()
JDBCDataStoreFactoryExample: 'postgis'.
getDatabaseID in class JDBCDataStoreFactorypublic String getDisplayName()
DataAccessFactoryA non localized display name for this data store type.
getDisplayName in interface DataAccessFactorygetDisplayName in class JDBCDataStoreFactorypublic String getDescription()
DataAccessFactoryA non localized description of this data store type.
protected JDBCDataStore createDataStoreInternal(JDBCDataStore dataStore, Map params) throws IOException
JDBCDataStoreFactoryTypically subclasses will want to override this method in the case where they provide additional datastore parameters, those should be processed here.
This method is provided with an instance of the datastore. In some cases subclasses may wish to create a new instance of the datastore, for instance in order to wrap the original instance. This is supported but the new datastore must be returned from this method. If not is such the case this method should still return the original passed in.
createDataStoreInternal in class JDBCDataStoreFactorydataStore - The newly created datastore.params - THe datastore parameters.IOExceptionpublic DataStore createNewDataStore(Map params) throws IOException
createNewDataStore in interface DataStoreFactorySpicreateNewDataStore in class JDBCDataStoreFactoryIOExceptionpublic Map getImplementationHints()
JDBCDataStoreFactorySubclasses may override, this implementation returns null.
getImplementationHints in interface FactorygetImplementationHints in class JDBCDataStoreFactoryprotected SQLDialect createSQLDialect(JDBCDataStore dataStore)
JDBCDataStoreFactorycreateSQLDialect in class JDBCDataStoreFactorydataStore - The datastore.protected boolean checkDBType(Map params)
checkDBType in class JDBCDataStoreFactoryCopyright © 1996–2019 Geotools. All rights reserved.