org.geotools.arcsde
Class ArcSDEDataStoreFactory

Object
  extended by ArcSDEDataStoreFactory
All Implemented Interfaces:
DataAccessFactory, DataStoreFactorySpi, Factory

public final class ArcSDEDataStoreFactory
extends Object
implements DataStoreFactorySpi

Factory to create DataStores over a live ArcSDE instance.

Author:
Gabriel Roldan, Axios Engineering

Nested Class Summary
 
Nested classes/interfaces inherited from interface DataAccessFactory
DataAccessFactory.Param
 
Field Summary
static DataAccessFactory.Param ALLOW_NON_SPATIAL_PARAM
           
static DataAccessFactory.Param DBTYPE_PARAM
           
static String FACTORY_DESCRIPTION
          friendly factory description
static DataAccessFactory.Param INSTANCE_PARAM
           
static int JSDE_VERSION_90
           
static int JSDE_VERSION_91
           
static int JSDE_VERSION_92
           
static int JSDE_VERSION_93
           
static int JSDE_VERSION_DUMMY
           
protected static Logger LOGGER
          package's logger
static DataAccessFactory.Param MAX_CONNECTIONS_PARAM
           
static DataAccessFactory.Param MIN_CONNECTIONS_PARAM
           
static DataAccessFactory.Param NAMESPACE_PARAM
           
static DataAccessFactory.Param PASSWORD_PARAM
           
static DataAccessFactory.Param PORT_PARAM
          In order to use Direct Connect, port parameter has to be of type String
static DataAccessFactory.Param SERVER_PARAM
           
static DataAccessFactory.Param TIMEOUT_PARAM
           
static DataAccessFactory.Param USER_PARAM
           
static DataAccessFactory.Param VERSION_PARAM
           
 
Constructor Summary
ArcSDEDataStoreFactory()
          empty constructor
 
Method Summary
 boolean canProcess(Map<String,Serializable> params)
          Test to see if this factory is suitable for processing the data pointed to by the params map.
 DataStore createDataStore(Map<String,Serializable> params)
          crates an SdeDataSource based on connection parameters held in params.
 DataStore createNewDataStore(Map<String,Serializable> map)
           
 String getDescription()
          A human friendly name for this data source factory
 String getDisplayName()
          Display name for this DataStore Factory
 Map<RenderingHints.Key,?> getImplementationHints()
          Returns the implementation hints.
 DataAccessFactory.Param[] getParametersInfo()
          MetaData about the required Parameters (for createDataStore).
static int getSdeClientVersion()
           
 boolean isAvailable()
          Test to see if this datastore is available, if it has all the appropriate libraries to construct a datastore.
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOGGER

protected static final Logger LOGGER
package's logger


FACTORY_DESCRIPTION

public static final String FACTORY_DESCRIPTION
friendly factory description

See Also:
Constant Field Values

JSDE_VERSION_DUMMY

public static final int JSDE_VERSION_DUMMY
See Also:
Constant Field Values

JSDE_VERSION_90

public static final int JSDE_VERSION_90
See Also:
Constant Field Values

JSDE_VERSION_91

public static final int JSDE_VERSION_91
See Also:
Constant Field Values

JSDE_VERSION_92

public static final int JSDE_VERSION_92
See Also:
Constant Field Values

JSDE_VERSION_93

public static final int JSDE_VERSION_93
See Also:
Constant Field Values

NAMESPACE_PARAM

public static final DataAccessFactory.Param NAMESPACE_PARAM

DBTYPE_PARAM

public static final DataAccessFactory.Param DBTYPE_PARAM

SERVER_PARAM

public static final DataAccessFactory.Param SERVER_PARAM

PORT_PARAM

public static final DataAccessFactory.Param PORT_PARAM
In order to use Direct Connect, port parameter has to be of type String


INSTANCE_PARAM

public static final DataAccessFactory.Param INSTANCE_PARAM

USER_PARAM

public static final DataAccessFactory.Param USER_PARAM

PASSWORD_PARAM

public static final DataAccessFactory.Param PASSWORD_PARAM

MIN_CONNECTIONS_PARAM

public static final DataAccessFactory.Param MIN_CONNECTIONS_PARAM

MAX_CONNECTIONS_PARAM

public static final DataAccessFactory.Param MAX_CONNECTIONS_PARAM

TIMEOUT_PARAM

public static final DataAccessFactory.Param TIMEOUT_PARAM

VERSION_PARAM

public static final DataAccessFactory.Param VERSION_PARAM

ALLOW_NON_SPATIAL_PARAM

public static final DataAccessFactory.Param ALLOW_NON_SPATIAL_PARAM
Constructor Detail

ArcSDEDataStoreFactory

public ArcSDEDataStoreFactory()
empty constructor

Method Detail

createNewDataStore

public DataStore createNewDataStore(Map<String,Serializable> map)
Specified by:
createNewDataStore in interface DataStoreFactorySpi
Throws:
UnsupportedOperationException - always as the operation is not supported
See Also:
DataStoreFactorySpi.createNewDataStore(Map)

createDataStore

public DataStore createDataStore(Map<String,Serializable> params)
                          throws IOException
crates an SdeDataSource based on connection parameters held in params.

Expected parameters are:

Optional parameters:

Specified by:
createDataStore in interface DataAccessFactory
Specified by:
createDataStore in interface DataStoreFactorySpi
Parameters:
params - connection parameters
Returns:
a new SdeDataStore pointing to the database defined by params
Throws:
IOException - if something goes wrong creating the datastore.

getDisplayName

public String getDisplayName()
Display name for this DataStore Factory

Specified by:
getDisplayName in interface DataAccessFactory
Returns:
"ArcSDE"

getDescription

public String getDescription()
A human friendly name for this data source factory

Specified by:
getDescription in interface DataAccessFactory
Returns:
this factory's description

canProcess

public boolean canProcess(Map<String,Serializable> params)
Description copied from interface: DataAccessFactory
Test to see if this factory is suitable for processing the data pointed to by the params map.

If this datasource requires a number of parameters then this mehtod should check that they are all present and that they are all valid. If the datasource is a file reading data source then the extentions or mime types of any files specified should be checked. For example, a Shapefile datasource should check that the url param ends with shp, such tests should be case insensative.

Specified by:
canProcess in interface DataAccessFactory
Parameters:
params - The full set of information needed to construct a live data source.
Returns:
booean true if and only if this factory can process the resource indicated by the param set and all the required params are pressent.

isAvailable

public boolean isAvailable()
Test to see if this datastore is available, if it has all the appropriate libraries to construct a datastore.

Specified by:
isAvailable in interface DataAccessFactory
Returns:
true if and only if this factory is available to create DataStores.

getParametersInfo

public DataAccessFactory.Param[] getParametersInfo()
Description copied from interface: DataAccessFactory
MetaData about the required Parameters (for createDataStore).

Interpretation of FeatureDescriptor values:

This should be the same as:


 Object params = factory.getParameters();
 BeanInfo info = getBeanInfo( params );

 return info.getPropertyDescriptors();
 

Specified by:
getParametersInfo in interface DataAccessFactory
Returns:
Param array describing the Map for createDataStore
See Also:
DataAccessFactory.getParametersInfo()

getImplementationHints

public Map<RenderingHints.Key,?> 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.
See Also:
Factory.getImplementationHints()

getSdeClientVersion

public static int getSdeClientVersion()


Copyright © 1996-2014 Geotools. All Rights Reserved.