public abstract class IlvDBFeatureIterator extends IlvMapDelegateFeatureIterator implements IlvMapRegionOfInterestIterator, IlvPersistentObject
| Constructor and Description |
|---|
IlvDBFeatureIterator(IlvDBDataSource dataSource)
Creates a new
IlvDBFeatureIterator. |
IlvDBFeatureIterator(IlvInputStream stream)
Reads an iterator from an
IlvInputStream. |
| Modifier and Type | Method and Description |
|---|---|
void |
dispose()
Releases the resources allocated by the feature iterator
(files, connections, and so on).
|
protected abstract String |
getAsBinaryFunctionName()
Returns the name of the function that transforms a blob column into binary.
|
protected String |
getAttrColumnList()
Get a comma separated list of column names for the non-geometry attributes.
|
protected abstract String |
getBoundsQuery()
Returns the SELECT statement that returns the bounds of the geometric data contained in the table.
|
IlvCoordinateSystem |
getCoordinateSystem()
Returns the spatial reference system that describes the coordinate
system of geometric coordinates of the map features.
|
String |
getCoordinateSystemWKTDefinition()
Returns the WKT definition of the coordinate system.
|
String |
getGeometryColumnName()
Returns the name of the table column where geometry is defined.
|
Rectangle2D |
getLatLonBounds()
Returns the bounds of all objects returned by this feature iterator.
|
IlvThreadedActivityMonitor |
getMonitor()
Gets the activity monitor attached to the iterator.
|
IlvMapFeature |
getNextFeature()
Returns the next map feature of the iterator or
null if the iteration is finished. |
protected abstract String |
getRegionPredicate()
Returns the WHERE clause that limits the selection to within the region of interest.
|
protected Double |
getRegionXMax()
Returns one of the four projected coordinates which this iterator should take into account.
|
protected Double |
getRegionXMin()
Returns one of the four projected coordinates which this iterator should take into account.
|
protected Double |
getRegionYMax()
Returns one of the four projected coordinates which this iterator should take into account.
|
protected Double |
getRegionYMin()
Returns one of the four projected coordinates which this iterator should take into account.
|
String |
getSchemaTableName()
Returns the database table name to iterate through.
|
Integer |
getSrsId()
Returns the id of the coordinate system for the geometry.
|
boolean |
isGeoreferenced()
Returns
true if the map reader can provide the
source projection of its map features. |
void |
restart()
Rewinds the iterator for a new use.
|
void |
setMonitor(IlvThreadedActivityMonitor monitor)
Changes the activity monitor that displays progress for that iterator.
|
void |
setRegionOfInterest(double minX,
double minY,
double maxX,
double maxY)
Sets the region of interest to return features for.
|
void |
write(IlvOutputStream stream)
Writes the attributes of a persistent object.
|
getDefaultFeatureRenderer, getDelegate, getLowerRightCorner, getUpperLeftCorner, setDelegateclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetDefaultFeatureRenderer, getLowerRightCorner, getUpperLeftCornerpublic IlvDBFeatureIterator(IlvInputStream stream) throws IlvReadFileException, SQLException, IOException
IlvInputStream.stream - The stream to read from.IlvReadFileException - if there is a problem reading from
stream.SQLExceptionIOExceptionpublic IlvDBFeatureIterator(IlvDBDataSource dataSource) throws IOException, SQLException
IlvDBFeatureIterator.
We will always assume that a feature iterator has an open and valid database connection.dataSource - the data source to iterate through.IOExceptionSQLExceptionpublic void write(IlvOutputStream stream) throws IOException
write in interface IlvPersistentObjectstream - the output streamIOException - thrown when an exception occurs during
the write operation for this object.public IlvThreadedActivityMonitor getMonitor()
public void setMonitor(IlvThreadedActivityMonitor monitor)
monitor - the activity monitorprotected Double getRegionXMax()
protected Double getRegionXMin()
protected Double getRegionYMax()
protected Double getRegionYMin()
public void dispose()
dispose in interface IlvMapFeatureIteratordispose in class IlvMapDelegateFeatureIteratorIlvMapFeatureIterator.dispose()protected String getAttrColumnList()
public IlvCoordinateSystem getCoordinateSystem()
getCoordinateSystem in interface IlvMapFeatureIteratorgetCoordinateSystem in class IlvMapDelegateFeatureIteratornull
if the coordinate system is unknown.IlvMapFeatureIterator.getCoordinateSystem()public Rectangle2D getLatLonBounds()
getLatLonBounds in interface IlvMapRegionOfInterestIteratorpublic IlvMapFeature getNextFeature()
null if the iteration is finished.
The returned map feature must be considered as volatile and
can be modified by the reader during the next call to its
getNextFeature function.getNextFeature in interface IlvMapFeatureIteratorgetNextFeature in class IlvMapDelegateFeatureIteratorIlvMapFeatureIterator.getNextFeature()protected abstract String getBoundsQuery()
protected abstract String getRegionPredicate()
protected abstract String getAsBinaryFunctionName()
public boolean isGeoreferenced()
true if the map reader can provide the
source projection of its map features.isGeoreferenced in interface IlvMapFeatureIteratorisGeoreferenced in class IlvMapDelegateFeatureIteratorIlvMapFeatureIterator.isGeoreferenced()public void restart()
restart in interface IlvMapReusableFeatureIteratorrestart in class IlvMapDelegateFeatureIteratorIlvMapReusableFeatureIterator.restart()public void setRegionOfInterest(double minX,
double minY,
double maxX,
double maxY)
IlvMapFeatureIterator.getNextFeature() method should not return any feature which geometry is outside this area.setRegionOfInterest in interface IlvMapRegionOfInterestIteratorminX - longitude min in radians.minY - latitude min in radians.maxX - longitude max in radians.maxY - latitude max in radians.public String getSchemaTableName()
public String getGeometryColumnName()
public Integer getSrsId()
public String getCoordinateSystemWKTDefinition()
© Copyright Rogue Wave Software, Inc. 1997, 2017. All Rights Reserved.