Class JDBCInsertFeatureWriter
- All Implemented Interfaces:
Closeable
,Flushable
,AutoCloseable
,FeatureReader<SimpleFeatureType,
,SimpleFeature> FeatureWriter<SimpleFeatureType,
SimpleFeature>
-
Nested Class Summary
Nested classes/interfaces inherited from class JDBCFeatureReader
JDBCFeatureReader.ResultSetFeature
-
Field Summary
Fields inherited from class JDBCFeatureReader
builder, callback, columnNames, cx, dataStore, featureSource, featureType, geometryFactory, hints, LOGGER, md, next, offset, pkey, query, rs, screenMap, st, TRACE_ENABLED, tracer, tx
-
Constructor Summary
ConstructorsConstructorDescriptionJDBCInsertFeatureWriter
(String sql, Connection cx, JDBCFeatureSource featureSource, Query query) JDBCInsertFeatureWriter
(PreparedStatement ps, Connection cx, JDBCFeatureSource featureSource, Query query) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
cleanup()
Cleans up the reader state without closing the accessory resultset, statement and connection.void
close()
Release the underlying resources associated with this stream.void
flush()
boolean
hasNext()
Query whether this FeatureReader has another Feature.next()
Reads the next Feature in the FeatureReader.void
remove()
Removes current Feature, must be called before hasNext.void
write()
Writes the current Feature, must be called before hasNext.Methods inherited from class JDBCFeatureReader
ensureNext, ensureOpen, finalize, getFeatureType, getPrimaryKey, getQuery, init, readNextFeature, setNext
Methods inherited from class Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface FeatureWriter
getFeatureType
-
Constructor Details
-
JDBCInsertFeatureWriter
public JDBCInsertFeatureWriter(String sql, Connection cx, JDBCFeatureSource featureSource, Query query) throws SQLException, IOException - Throws:
SQLException
IOException
-
JDBCInsertFeatureWriter
public JDBCInsertFeatureWriter(PreparedStatement ps, Connection cx, JDBCFeatureSource featureSource, Query query) throws SQLException, IOException - Throws:
SQLException
IOException
-
JDBCInsertFeatureWriter
- Throws:
IOException
-
-
Method Details
-
hasNext
Description copied from interface:FeatureReader
Query whether this FeatureReader has another Feature.- Specified by:
hasNext
in interfaceFeatureReader<SimpleFeatureType,
SimpleFeature> - Specified by:
hasNext
in interfaceFeatureWriter<SimpleFeatureType,
SimpleFeature> - Overrides:
hasNext
in classJDBCFeatureReader
- Returns:
- True if there are more Features to be read. In other words, true if calls to next would return a feature rather than throwing an exception.
- Throws:
IOException
- If an error occurs determining if there are more Features.
-
next
Description copied from interface:FeatureReader
Reads the next Feature in the FeatureReader.- Specified by:
next
in interfaceFeatureReader<SimpleFeatureType,
SimpleFeature> - Specified by:
next
in interfaceFeatureWriter<SimpleFeatureType,
SimpleFeature> - Overrides:
next
in classJDBCFeatureReader
- Returns:
- The next feature in the reader.
- Throws:
IOException
- If an error occurs reading the Feature.
-
remove
Description copied from interface:FeatureWriter
Removes current Feature, must be called before hasNext.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).
- Specified by:
remove
in interfaceFeatureWriter<SimpleFeatureType,
SimpleFeature> - Throws:
IOException
-
write
Description copied from interface:FeatureWriter
Writes the current Feature, must be called before hasNext.FeautreWriters will need to allow FeatureSources of the same typeName to issue a FeatureEvent:
- FeatureEvent.FEATURES_ADDED: when next() has been called with hasNext() equal to
false
. - FeatureEvent.FEATURES_MODIFIED: when next has been called with hasNext() equal to
true
and the resulting Feature has indeed been modified.
If this FeatureWriter is opperating against a Transaction the FEATURES_MODIFIED or FEATURES_ADDED events should only be sent to FeatureSources opperating on the same Transaction. When Transaction commit() is called other FeatureSources will be informed of the modifications.
If you have not called write() when you call hasNext() or next(), no modification will occur().
- Specified by:
write
in interfaceFeatureWriter<SimpleFeatureType,
SimpleFeature> - Throws:
IOException
- FeatureEvent.FEATURES_ADDED: when next() has been called with hasNext() equal to
-
cleanup
Description copied from class:JDBCFeatureReader
Cleans up the reader state without closing the accessory resultset, statement and connection. Use only if the above are shared with another object that will take care of closing them.- Overrides:
cleanup
in classJDBCFeatureReader
- Throws:
IOException
-
flush
- Specified by:
flush
in interfaceFlushable
- Throws:
IOException
-
close
Description copied from interface:FeatureReader
Release the underlying resources associated with this stream.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in interfaceFeatureReader<SimpleFeatureType,
SimpleFeature> - Specified by:
close
in interfaceFeatureWriter<SimpleFeatureType,
SimpleFeature> - Overrides:
close
in classJDBCFeatureReader
- Throws:
IOException
- if an I/O error occurs
-