|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.geotools.data.AbstractFeatureSource org.geotools.data.AbstractFeatureStore
This is a starting point for providing your own FeatureStore implementation.
Field Summary | |
protected Transaction |
transaction
Current Transaction this FeatureSource is opperating against |
Constructor Summary | |
AbstractFeatureStore()
|
Method Summary | |
java.util.Set |
addFeatures(FeatureReader reader)
Add Features from reader to this FeatureStore. |
Transaction |
getTransaction()
Retrieve the Transaction this FeatureSource is opperating against. |
void |
modifyFeatures(AttributeType[] type,
java.lang.Object[] value,
Filter filter)
Modifies features matching filter .
|
void |
modifyFeatures(AttributeType type,
java.lang.Object value,
Filter filter)
Modifies features matching filter .
|
void |
removeFeatures(Filter filter)
Removes features indicated by provided filter. |
void |
setFeatures(FeatureReader reader)
Replace with contents of reader. |
void |
setTransaction(Transaction transaction)
Provides a transaction for commit/rollback control of this FeatureStore. |
Methods inherited from class org.geotools.data.AbstractFeatureSource |
getBounds, getBounds, getCount, getFeatures, getFeatures, getFeatures, namedQuery |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.geotools.data.FeatureSource |
addFeatureListener, getBounds, getBounds, getCount, getDataStore, getFeatures, getFeatures, getFeatures, getSchema, removeFeatureListener |
Field Detail |
protected Transaction transaction
Constructor Detail |
public AbstractFeatureStore()
Method Detail |
public Transaction getTransaction()
getTransaction
in interface FeatureStore
getTransaction
in class AbstractFeatureSource
public void modifyFeatures(AttributeType type, java.lang.Object value, Filter filter) throws java.io.IOException
filter
.
Equivelent to:
FeatureWriter writer = dataStore.getFeatureWriter( typeName, filter, transaction );
while( writer.hasNext() ){
feature = writer.next();
feature.setAttribute( type.getName(), value );
writer.write();
}
writer.close();
Subclasses may override this method to perform the appropriate optimization for this result.
modifyFeatures
in interface FeatureStore
type
- Attribute to modifyvalue
- Modification being made to typefilter
- Identifies features to modify
java.io.IOException
- If modification could not be madeFeatureStore.modifyFeatures(org.geotools.feature.AttributeType,
java.lang.Object, org.geotools.filter.Filter)
public void modifyFeatures(AttributeType[] type, java.lang.Object[] value, Filter filter) throws java.io.IOException
filter
.
Equivelent to:
FeatureWriter writer = dataStore.getFeatureWriter( typeName, filter, transaction );
Feature feature;
while( writer.hasNext() ){
feature = writer.next();
feature.setAttribute( type[0].getName(), value[0] );
feature.setAttribute( type[1].getName(), value[1] );
...
feature.setAttribute( type[N].getName(), value[N] );
writer.write();
}
writer.close();
Subclasses may override this method to perform the appropriate optimization for this result.
modifyFeatures
in interface FeatureStore
type
- Attributes to modifyvalue
- Modifications being made to typefilter
- Identifies features to modify
java.io.IOException
- If we could not modify Feature
DataSourceException
- See IOExceptionFeatureStore.modifyFeatures(org.geotools.feature.AttributeType,
java.lang.Object, org.geotools.filter.Filter)
public java.util.Set addFeatures(FeatureReader reader) throws java.io.IOException
Equivelent to:
Set set = new HashSet();
FeatureWriter writer = dataStore.getFeatureWriter( typeName, true, transaction );
Featrue feature, newFeature;
while( reader.hasNext() ){
feature = reader.next();
newFeature = writer.next();
newFeature.setAttributes( feature.getAttribtues( null ) );
writer.write();
set.add( newfeature.getID() );
}
reader.close();
writer.close();
return set;
(If you don't have a FeatureReader handy DataUtilities.reader() may be able to help out)
Subclasses may override this method to perform the appropriate optimization for this result.
addFeatures
in interface FeatureStore
reader
-
java.io.IOException
- If we encounter a problem encounter writing content
DataSourceException
- See IOExceptionFeatureStore.addFeatures(org.geotools.data.FeatureReader)
public void removeFeatures(Filter filter) throws java.io.IOException
Equivelent to:
FeatureWriter writer = dataStore.getFeatureWriter( typeName, filter, transaction );
Feature feature;
while( writer.hasNext() ){
feature = writer.next();
writer.remove();
}
writer.close();
Subclasses may override this method to perform the appropriate optimization for this result.
removeFeatures
in interface FeatureStore
filter
- Identifies features to remove
java.io.IOException
FeatureStore.modifyFeatures(org.geotools.feature.AttributeType,
java.lang.Object, org.geotools.filter.Filter)
public void setFeatures(FeatureReader reader) throws java.io.IOException
Equivelent to:
FeatureWriter writer = dataStore.getFeatureWriter( typeName, false, transaction );
Feature feature, newFeature;
while( writer.hasNext() ){
feature = writer.next();
writer.remove();
}
while( reader.hasNext() ){
newFeature = reader.next();
feature = writer.next();
newFeature.setAttributes( feature.getAttributes( null ) );
writer.write();
}
reader.close();
writer.close();
Subclasses may override this method to perform the appropriate optimization for this result.
setFeatures
in interface FeatureStore
reader
- Contents to replace with
java.io.IOException
- if anything goes wrong during replacement
DataSourceException
- See IOExceptionFeatureStore.modifyFeatures(org.geotools.feature.AttributeType,
java.lang.Object, org.geotools.filter.Filter)
public void setTransaction(Transaction transaction)
FeatureStore
This method operates as a replacement for setAutoCommitMode. When a transaction is provided you are no longer automatically committing.
In order to return to AutoCommit mode supply the Transaction.AUTO_COMMIT to this method. Since this represents a return to AutoCommit mode the previous Transaction will be commited.
setTransaction
in interface FeatureStore
transaction
- DOCUMENT ME!
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |