Class OracleNGOCIDataStoreFactory
- Object
-
- JDBCDataStoreFactory
-
- OracleNGDataStoreFactory
-
- OracleNGOCIDataStoreFactory
-
- All Implemented Interfaces:
DataAccessFactory,DataStoreFactorySpi,Factory
public class OracleNGOCIDataStoreFactory extends OracleNGDataStoreFactory
Creates an Oracle datastore based on a thick OCI client connection, instead of the traditional (thin) jdbc connection. The thin JDBC connection was designed for clients requiring no more classes than just ojdbc14.jar. The OCI JDBC drivers are based on the Oracle client software and rely mostly on the C/C++ based OCI (Oracle Call Interface) runtime.Looking over the internet it's not clear whether the OCI setup is faster than thin driver, different benchmarks report different results, but for sure OCI allows to expose a wider set of configurations and in particular it's recognized as the best way to connect to an Oracle cluster.
Instead of the instance, host, port requirements of the normal oracle factory this driver just requires the 'alias', which refers to values defined by the Oracle Net Configuration assistant and stored in $ORACLE_HOME/NETWORK/ADMIN/tnsnames.ora. We have also had luck on the same computer with just leaving 'alias' as an empty string, and it seems to have a reasonable default behavior.
- Author:
- Chris Holmes, TOPP, Bernard de Terwangne, star.be, Andrea Aime - OpenGeo
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface DataAccessFactory
DataAccessFactory.Param
-
-
Field Summary
Fields Modifier and Type Field Description static DataAccessFactory.ParamALIASThe alias parameter used to specify the database to connect to-
Fields inherited from class OracleNGDataStoreFactory
CONNECTION_TIMEOUT, DATABASE, DBTYPE, ESTIMATED_EXTENTS, GEOMETRY_METADATA_TABLE, GET_REMARKS, HOST, LOGIN_TIMEOUT, LOOSEBBOX, METADATA_BBOX, OUTBOUND_CONNECTION_TIMEOUT, PORT
-
Fields inherited from class JDBCDataStoreFactory
BATCH_INSERT_SIZE, CALLBACK_FACTORY, DATASOURCE, EVICTOR_TESTS_PER_RUN, EXPOSE_PK, FETCHSIZE, MAX_OPEN_PREPARED_STATEMENTS, MAXCONN, MAXWAIT, MIN_EVICTABLE_TIME, MINCONN, NAMESPACE, PASSWD, PK_METADATA_TABLE, SCHEMA, SQL_ON_BORROW, SQL_ON_RELEASE, TEST_WHILE_IDLE, TIME_BETWEEN_EVICTOR_RUNS, USER, VALIDATECONN
-
-
Constructor Summary
Constructors Constructor Description OracleNGOCIDataStoreFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringgetDescription()Describe the nature of the datasource constructed by this factory.StringgetDisplayName()Name suitable for display to end user.protected StringgetJDBCUrl(Map params)Builds up the JDBC url in a jdbc::// : / Override if you need a different setup protected voidsetupParameters(Map parameters)Sets up the database connection parameters.-
Methods inherited from class OracleNGDataStoreFactory
checkDBType, createDataStoreInternal, createSQLDialect, getDatabaseID, getDriverClassName, getValidationQuery
-
Methods inherited from class JDBCDataStoreFactory
canProcess, checkDBType, createDataSource, createDataSource, createDataStore, createNewDataStore, createSQLDialect, getImplementationHints, getParametersInfo, isAvailable
-
-
-
-
Field Detail
-
ALIAS
public static final DataAccessFactory.Param ALIAS
The alias parameter used to specify the database to connect to
-
-
Method Detail
-
getDisplayName
public String getDisplayName()
Description copied from interface:DataAccessFactoryName suitable for display to end user.A non localized display name for this data store type.
- Specified by:
getDisplayNamein interfaceDataAccessFactory- Overrides:
getDisplayNamein classOracleNGDataStoreFactory- Returns:
- A short name suitable for display in a user interface.
-
getDescription
public String getDescription()
Description copied from interface:DataAccessFactoryDescribe the nature of the datasource constructed by this factory.A non localized description of this data store type.
- Specified by:
getDescriptionin interfaceDataAccessFactory- Overrides:
getDescriptionin classOracleNGDataStoreFactory- Returns:
- A human readable description that is suitable for inclusion in a list of available datasources.
-
getJDBCUrl
protected String getJDBCUrl(Map params) throws IOException
Description copied from class:JDBCDataStoreFactoryBuilds up the JDBC url in a jdbc::// : / Override if you need a different setup - Overrides:
getJDBCUrlin classOracleNGDataStoreFactory- Throws:
IOException
-
setupParameters
protected void setupParameters(Map parameters)
Description copied from class:JDBCDataStoreFactorySets up the database connection parameters.Subclasses may extend, but should not override. This implementation registers the following parameters.
Subclass implementation may remove any parameters from the map, or may overrwrite any parameters in the map.- Overrides:
setupParametersin classOracleNGDataStoreFactory- Parameters:
parameters- Map ofDataAccessFactory.Paramobjects.
-
-