org.geotools.arcsde.data
Class ArcSdeFeatureStore

Object
  extended by ArcSdeFeatureSource
      extended by ArcSdeFeatureStore
All Implemented Interfaces:
FeatureSource<SimpleFeatureType,SimpleFeature>, FeatureStore<SimpleFeatureType,SimpleFeature>

public class ArcSdeFeatureStore
extends ArcSdeFeatureSource
implements FeatureStore<SimpleFeatureType,SimpleFeature>


Field Summary
 
Fields inherited from class ArcSdeFeatureSource
dataStore, transaction, typeInfo
 
Constructor Summary
ArcSdeFeatureStore(FeatureTypeInfo typeInfo, ArcSDEDataStore arcSDEDataStore)
           
 
Method Summary
 List<FeatureId> addFeatures(FeatureCollection<SimpleFeatureType,SimpleFeature> collection)
          Adds all features from the passed feature collection to the datasource.
 Transaction getTransaction()
          Used to access the Transaction this DataSource is currently opperating against.
 void modifyFeatures(AttributeDescriptor[] attributes, Object[] values, Filter filter)
          Modifies the passed attribute types with the passed objects in all features that correspond to the passed OGS filter.
 void modifyFeatures(AttributeDescriptor type, Object value, Filter filter)
          Modifies the passed attribute types with the passed objects in all features that correspond to the passed OGS filter.
 void removeFeatures(Filter filter)
          Removes all of the features specificed by the passed filter from the collection.
 void setFeatures(FeatureReader<SimpleFeatureType,SimpleFeature> reader)
          Deletes the all the current Features of this datasource and adds the new collection.
 void setTransaction(Transaction transaction)
          Sets this FeatureStore transaction.
 
Methods inherited from class ArcSdeFeatureSource
addFeatureListener, getBounds, getBounds, getBounds, getCount, getCount, getDataStore, getfeatureReader, getFeatures, getFeatures, getFeatures, getInfo, getName, getQueryCapabilities, getSchema, getSession, getSupportedHints, getVersionHandler, removeFeatureListener
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface FeatureSource
addFeatureListener, getBounds, getBounds, getCount, getDataStore, getFeatures, getFeatures, getFeatures, getInfo, getName, getQueryCapabilities, getSchema, getSupportedHints, removeFeatureListener
 

Constructor Detail

ArcSdeFeatureStore

public ArcSdeFeatureStore(FeatureTypeInfo typeInfo,
                          ArcSDEDataStore arcSDEDataStore)
Method Detail

getTransaction

public Transaction getTransaction()
Description copied from interface: FeatureStore
Used to access the Transaction this DataSource is currently opperating against.

Example Use: adding features to a road DataSource


 Transaction t = roads.getTransaction();
 try{
     roads.addFeatures( features );
     roads.getTransaction().commit();
 }
 catch( IOException erp ){
     //something went wrong;
     roads.getTransaction().rollback();
 }
 

Specified by:
getTransaction in interface FeatureStore<SimpleFeatureType,SimpleFeature>
Returns:
Transaction in use, or Transaction.AUTO_COMMIT
See Also:
FeatureStore.getTransaction()

setTransaction

public void setTransaction(Transaction transaction)
Sets this FeatureStore transaction.

If transaction is not auto commit, initiates an ArcTransactionState with the dataStore's connection pool as key.

Specified by:
setTransaction in interface FeatureStore<SimpleFeatureType,SimpleFeature>
Parameters:
transaction - DOCUMENT ME!
See Also:
FeatureStore.setTransaction(Transaction)

addFeatures

public List<FeatureId> addFeatures(FeatureCollection<SimpleFeatureType,SimpleFeature> collection)
                            throws IOException
Description copied from interface: FeatureStore
Adds all features from the passed feature collection to the datasource.

A list of FeatureIds is returned; one for each Feature in the order created. Please note that these FeatureIds may not be assigned until after a commit has been performed.

Specified by:
addFeatures in interface FeatureStore<SimpleFeatureType,SimpleFeature>
Parameters:
collection - The collection of features to add.
Returns:
the FeatureIds of the newly added features.
Throws:
IOException - if anything goes wrong.
See Also:
FeatureStore#addFeatures(FeatureCollection)

modifyFeatures

public void modifyFeatures(AttributeDescriptor[] attributes,
                           Object[] values,
                           Filter filter)
                    throws IOException
Description copied from interface: FeatureStore
Modifies the passed attribute types with the passed objects in all features that correspond to the passed OGS filter.

Specified by:
modifyFeatures in interface FeatureStore<SimpleFeatureType,SimpleFeature>
Parameters:
attributes - The attributes to modify.
values - The values to put in the attribute types.
filter - An OGC filter to note which attributes to modify.
Throws:
IOException - if the attribute and object arrays are not eqaul length, if the object types do not match the attribute types, or if there are backend errors.
See Also:
FeatureStore.modifyFeatures(AttributeDescriptor[], Object[], Filter)

modifyFeatures

public final void modifyFeatures(AttributeDescriptor type,
                                 Object value,
                                 Filter filter)
                          throws IOException
Description copied from interface: FeatureStore
Modifies the passed attribute types with the passed objects in all features that correspond to the passed OGS filter. A convenience method for single attribute modifications.

Specified by:
modifyFeatures in interface FeatureStore<SimpleFeatureType,SimpleFeature>
Parameters:
type - The attributes to modify.
value - The values to put in the attribute types.
filter - An OGC filter to note which attributes to modify.
Throws:
IOException - If modificaton is not supported, if the object type do not match the attribute type.
See Also:
FeatureStore.modifyFeatures(AttributeDescriptor, Object, Filter)

removeFeatures

public void removeFeatures(Filter filter)
                    throws IOException
Description copied from interface: FeatureStore
Removes all of the features specificed by the passed filter from the collection.

Specified by:
removeFeatures in interface FeatureStore<SimpleFeatureType,SimpleFeature>
Parameters:
filter - An OpenGIS filter; specifies which features to remove.
Throws:
IOException - If anything goes wrong.
See Also:
FeatureStore.removeFeatures(Filter)

setFeatures

public void setFeatures(FeatureReader<SimpleFeatureType,SimpleFeature> reader)
                 throws IOException
Description copied from interface: FeatureStore
Deletes the all the current Features of this datasource and adds the new collection. Primarily used as a convenience method for file datasources.

Specified by:
setFeatures in interface FeatureStore<SimpleFeatureType,SimpleFeature>
Parameters:
reader - - the collection to be written
Throws:
IOException - if there are any datasource errors.
See Also:
FeatureStore.setFeatures(FeatureReader)


Copyright © 1996-2009 Geotools. All Rights Reserved.