|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.geotools.data.DiffFeatureWriter
A FeatureWriter that captures modifications against a FeatureReader.
You will eventually need to write out the differences, later.
The api has been implemented in terms of FeatureReader to make explicit that no Features are writen out by this Class.
TransactionStateDiff
Field Summary | |
protected java.util.Map |
diff
|
protected FeatureReader |
reader
|
Constructor Summary | |
DiffFeatureWriter(FeatureReader reader,
java.util.Map diff)
DiffFeatureWriter construction. |
|
DiffFeatureWriter(FeatureReader reader,
java.util.Map diff,
Filter filter)
DiffFeatureWriter construction. |
Method Summary | |
void |
close()
Clean up resources associated with this writer. |
protected abstract void |
fireNotification(int eventType,
com.vividsolutions.jts.geom.Envelope bounds)
Subclass must provide the notification. |
FeatureType |
getFeatureType()
Supplys FeatureTypeFrom reader |
boolean |
hasNext()
Query for more content. |
Feature |
next()
Next Feature from reader or new content. |
void |
remove()
Removes current Feature, must be called before hasNext. |
void |
write()
Writes out the current feature. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected FeatureReader reader
protected java.util.Map diff
Constructor Detail |
public DiffFeatureWriter(FeatureReader reader, java.util.Map diff)
reader
- diff
- public DiffFeatureWriter(FeatureReader reader, java.util.Map diff, Filter filter)
reader
- diff
- Method Detail |
public FeatureType getFeatureType()
getFeatureType
in interface FeatureWriter
FeatureWriter.getFeatureType()
public Feature next() throws java.io.IOException
next
in interface FeatureWriter
java.io.IOException
- DOCUMENT ME!FeatureWriter.next()
public void remove() throws java.io.IOException
FeatureWriter
FeatureWriters will need to allow all FeatureSources of the same
typeName to issue a FeatureEvent event of type
FeatureEvent.FEATURES_REMOVED
when this method is called.
If this FeatureWriter is opperating against a Transaction FEATURES_REMOVED events should only be sent to FeatureSources operating on the same Transaction. When Transaction commit() is called other FeatureSources will be informed of the modifications.
When the current Feature has been provided as new content, this method "cancels" the add opperation (and notification needed).
remove
in interface FeatureWriter
java.io.IOException
- DOCUMENT ME!FeatureWriter.remove()
public void write() throws java.io.IOException
write
in interface FeatureWriter
java.io.IOException
FeatureWriter.write()
public boolean hasNext() throws java.io.IOException
hasNext
in interface FeatureWriter
true
if an additional Feature
is
available.
java.io.IOException
- DOCUMENT ME!FeatureWriter.hasNext()
public void close() throws java.io.IOException
Diff is not clear()ed as it is assumed that it belongs to a Transaction.State object and may yet be written out.
close
in interface FeatureWriter
java.io.IOException
- if there there are problems releasing underlying resources, or
possibly if close has been called (up to the implementation).FeatureWriter.close()
protected abstract void fireNotification(int eventType, com.vividsolutions.jts.geom.Envelope bounds)
Notification requirements for modifications against a Transaction should only be issued to FeatureSource instances that opperate against the same typeName and Transaction.
Other FeatureSource instances with the same typeName will be notified when the Transaction is committed.
eventType
- One of FeatureType.FEATURES_ADDED, FeatureType.CHANGED,
FeatureType.FEATURES_REMOVEDbounds
-
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |