org.geotools.data.oracle
Class OracleDataStoreFactory

java.lang.Object
  extended byorg.geotools.data.oracle.OracleDataStoreFactory
All Implemented Interfaces:
DataStoreFactorySpi, Factory

public class OracleDataStoreFactory
extends java.lang.Object
implements DataStoreFactorySpi

Creates a PostgisDataStore baed on the correct params.

This factory should be registered in the META-INF/ folder, under services/ in the DataStoreFactorySpi file.

Author:
Jody Garnett, Refractions Research, Sean Geoghegan, Defence Science and Technology Organisation

Nested Class Summary
 
Nested classes inherited from class org.geotools.data.DataStoreFactorySpi
DataStoreFactorySpi.Param
 
Constructor Summary
OracleDataStoreFactory()
          Creates a new instance of OracleDataStoreFactory
 
Method Summary
 boolean canProcess(java.util.Map params)
          Determines whether DataStore created by this factory can process the parameters.
 DataStore createDataStore(java.util.Map params)
          Construct a postgis data store using the params.
 DataStore createNewDataStore(java.util.Map params)
          Oracle cannot create a new database.
 java.lang.String getDescription()
          Describe the nature of the datastore constructed by this factory.
 java.lang.String getDisplayName()
          Name suitable for display to end user.
 java.util.Map getImplementationHints()
          Returns the implementation hints.
 DataStoreFactorySpi.Param[] getParametersInfo()
          Describe parameters.
 boolean isAvailable()
          Returns whether the OracleDataStoreFactory would actually be able to generate a DataStore.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OracleDataStoreFactory

public OracleDataStoreFactory()
Creates a new instance of OracleDataStoreFactory

Method Detail

canProcess

public boolean canProcess(java.util.Map params)
Determines whether DataStore created by this factory can process the parameters.

Required Parameters are:

There are no defaults since each parameter must be explicitly defined by the user, or another DataSourceFactorySpi should be used. This behaviour is defined in the DataStoreFactorySpi contract.

Specified by:
canProcess in interface DataStoreFactorySpi
Parameters:
params - The parameter to check.
Returns:
True if all the required parameters are supplied.

createDataStore

public DataStore createDataStore(java.util.Map params)
                          throws java.io.IOException
Construct a postgis data store using the params.

Specified by:
createDataStore in interface DataStoreFactorySpi
Parameters:
params - The full set of information needed to construct a live data source. Should have dbtype equal to postgis, as well as host, user, passwd, database, and table.
Returns:
The created DataSource, this may be null if the required resource was not found or if insufficent parameters were given. Note that canProcess() should have returned false if the problem is to do with insuficent parameters.
Throws:
DataSourceException - Thrown if there were any problems creating or connecting the datasource.
java.io.IOException

createNewDataStore

public DataStore createNewDataStore(java.util.Map params)
                             throws java.io.IOException
Oracle cannot create a new database.

Specified by:
createNewDataStore in interface DataStoreFactorySpi
Parameters:
params -
Returns:
Throws:
java.lang.UnsupportedOperationException - Cannot create new database
java.io.IOException

getDisplayName

public java.lang.String getDisplayName()
Description copied from interface: DataStoreFactorySpi
Name suitable for display to end user.

A non localized display name for this data store type.

Specified by:
getDisplayName in interface DataStoreFactorySpi
Returns:
A short name suitable for display in a user interface.

getDescription

public java.lang.String getDescription()
Describe the nature of the datastore constructed by this factory.

Specified by:
getDescription in interface DataStoreFactorySpi
Returns:
A human readable description that is suitable for inclusion in a list of available datasources.

isAvailable

public boolean isAvailable()
Returns whether the OracleDataStoreFactory would actually be able to generate a DataStore. Depends on whether the appropriate libraries are on the classpath. For now just checks for the presence of the JDBC driver, should probably check for SDOAPI as well.

Specified by:
isAvailable in interface DataStoreFactorySpi
Returns:
True if the classes to make an oracle connection are present.
Task:
Figure out a class to check the SDOAPI for, and check it.

getParametersInfo

public DataStoreFactorySpi.Param[] getParametersInfo()
Describe parameters.

Specified by:
getParametersInfo in interface DataStoreFactorySpi
Returns:
See Also:
DataStoreFactorySpi.getParametersInfo()

getImplementationHints

public java.util.Map getImplementationHints()
Returns the implementation hints. The default implementation returns en empty map.

Specified by:
getImplementationHints in interface Factory
Returns:
The map of hints, or an empty map if none.


Copyright © GeoTools. All Rights Reserved.