org.geotools.data.mif
Class MIFDataStoreFactory

java.lang.Object
  extended byorg.geotools.data.mif.MIFDataStoreFactory
All Implemented Interfaces:
DataStoreFactorySpi, Factory

public class MIFDataStoreFactory
extends java.lang.Object
implements DataStoreFactorySpi

Builds a MIFDataStore. Required parameters are:

For a full description of creation parameters, see MIFDataStore().

Version:
$Id: MIFDataStoreFactory.java 17700 2006-01-22 23:30:39Z desruisseaux $
Author:
Luca S. Percich, AMA-MI
See Also:
MIFDataStore#MIFDataStore(String, HashMap);

Nested Class Summary
 
Nested classes inherited from class org.geotools.data.DataStoreFactorySpi
DataStoreFactorySpi.Param
 
Field Summary
static DataStoreFactorySpi.Param PARAM_CHARSET
           
static DataStoreFactorySpi.Param PARAM_COORDSYS
           
static DataStoreFactorySpi.Param PARAM_DBTYPE
           
static DataStoreFactorySpi.Param PARAM_DELIMITER
           
static DataStoreFactorySpi.Param PARAM_FIELDCASE
           
static DataStoreFactorySpi.Param PARAM_GEOMFACTORY
           
static DataStoreFactorySpi.Param PARAM_GEOMNAME
           
static DataStoreFactorySpi.Param PARAM_GEOMTYPE
           
static DataStoreFactorySpi.Param PARAM_INDEX
           
static DataStoreFactorySpi.Param PARAM_NAMESPACE
           
static DataStoreFactorySpi.Param PARAM_PATH
           
static DataStoreFactorySpi.Param PARAM_SRID
           
static DataStoreFactorySpi.Param PARAM_TRANSFORM
           
static DataStoreFactorySpi.Param PARAM_UNIQUE
           
static DataStoreFactorySpi.Param PARAM_VERSION
           
 
Constructor Summary
MIFDataStoreFactory()
          Creates a new MIFDataStoreFactory object.
 
Method Summary
 boolean canProcess(java.util.Map params)
          Test to see if this factory is suitable for processing the data pointed to by the params map.
 DataStore createDataStore(java.util.Map params)
          Construct a live data source using the params specifed.
 DataStore createNewDataStore(java.util.Map params)
           As the creation of new MIF files is simply achieved by createSchema() calls, this method simply calls createDataStore().
 java.lang.String getDescription()
          Describe the nature of the datasource constructed by this factory.
 java.lang.String getDisplayName()
          Name suitable for display to end user.
 java.util.Map getImplementationHints()
           Always return Collections#EMPTY_MAP, because no hints are available for now.
 DataStoreFactorySpi.Param[] getParametersInfo()
          MetaData about the required Parameters (for createDataStore).
 boolean isAvailable()
           This method always returns true, because no specific libraries are required by MIFDataStore.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PARAM_DBTYPE

public static final DataStoreFactorySpi.Param PARAM_DBTYPE

PARAM_PATH

public static final DataStoreFactorySpi.Param PARAM_PATH

PARAM_NAMESPACE

public static final DataStoreFactorySpi.Param PARAM_NAMESPACE

PARAM_FIELDCASE

public static final DataStoreFactorySpi.Param PARAM_FIELDCASE

PARAM_GEOMNAME

public static final DataStoreFactorySpi.Param PARAM_GEOMNAME

PARAM_GEOMFACTORY

public static final DataStoreFactorySpi.Param PARAM_GEOMFACTORY

PARAM_GEOMTYPE

public static final DataStoreFactorySpi.Param PARAM_GEOMTYPE

PARAM_SRID

public static final DataStoreFactorySpi.Param PARAM_SRID

PARAM_COORDSYS

public static final DataStoreFactorySpi.Param PARAM_COORDSYS

PARAM_CHARSET

public static final DataStoreFactorySpi.Param PARAM_CHARSET

PARAM_DELIMITER

public static final DataStoreFactorySpi.Param PARAM_DELIMITER

PARAM_INDEX

public static final DataStoreFactorySpi.Param PARAM_INDEX

PARAM_TRANSFORM

public static final DataStoreFactorySpi.Param PARAM_TRANSFORM

PARAM_UNIQUE

public static final DataStoreFactorySpi.Param PARAM_UNIQUE

PARAM_VERSION

public static final DataStoreFactorySpi.Param PARAM_VERSION
Constructor Detail

MIFDataStoreFactory

public MIFDataStoreFactory()
Creates a new MIFDataStoreFactory object.

Method Detail

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.

createDataStore

public DataStore createDataStore(java.util.Map params)
                          throws java.io.IOException
Description copied from interface: DataStoreFactorySpi
Construct a live data source using the params specifed.

You can think of this as setting up a connection to the back end data source.

Magic Params: the following params are magic and are honoured by convention by the GeoServer and uDig application.

When we eventually move over to the use of OpperationalParam we will have to find someway to codify this convention.

Specified by:
createDataStore in interface DataStoreFactorySpi
Parameters:
params - The full set of information needed to construct a live data store. Typical key values for the map include: url - location of a resource, used by file reading datasources. dbtype - the type of the database to connect to, e.g. postgis, mysql
Returns:
The created DataStore, 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:
java.io.IOException

createNewDataStore

public DataStore createNewDataStore(java.util.Map params)
                             throws java.io.IOException

As the creation of new MIF files is simply achieved by createSchema() calls, this method simply calls createDataStore().

Specified by:
createNewDataStore in interface DataStoreFactorySpi
Parameters:
params - The parameter map
Returns:
the MIFDataStore instance returned by createDataStore(params)
Throws:
java.io.IOException
See Also:
createDataStore(Map);

getDescription

public java.lang.String getDescription()
Description copied from interface: DataStoreFactorySpi
Describe the nature of the datasource constructed by this factory.

A non localized description of this data store type.

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

getParametersInfo

public DataStoreFactorySpi.Param[] getParametersInfo()
Description copied from interface: DataStoreFactorySpi
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 DataStoreFactorySpi
Returns:
Param array describing the Map for createDataStore
See Also:
DataStoreFactorySpi.getParametersInfo()

canProcess

public boolean canProcess(java.util.Map params)
Description copied from interface: DataStoreFactorySpi
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 DataStoreFactorySpi
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.
See Also:
DataStoreFactorySpi.canProcess(java.util.Map)

isAvailable

public boolean isAvailable()

This method always returns true, because no specific libraries are required by MIFDataStore.

Specified by:
isAvailable in interface DataStoreFactorySpi
Returns:
true if and only if this factory has all the appropriate jars on the classpath to create DataStores.
See Also:
DataStoreFactorySpi.isAvailable()

getImplementationHints

public java.util.Map getImplementationHints()

Always return Collections#EMPTY_MAP, because no hints are available for now.

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


Copyright © GeoTools. All Rights Reserved.