Package mil.nga.geopackage.features.user
Class FeatureCursor
- java.lang.Object
-
- android.database.CursorWrapper
-
- mil.nga.geopackage.db.CursorResult
-
- mil.nga.geopackage.user.UserCursor<FeatureColumn,FeatureTable,FeatureRow>
-
- mil.nga.geopackage.features.user.FeatureCursor
-
- All Implemented Interfaces:
Cursor,Closeable,AutoCloseable,Result,UserCoreResult<FeatureColumn,FeatureTable,FeatureRow>
- Direct Known Subclasses:
FeatureIndexerIdCursor
public class FeatureCursor extends UserCursor<FeatureColumn,FeatureTable,FeatureRow>
Feature Cursor to wrap a database cursor for feature queries
-
-
Field Summary
-
Fields inherited from interface android.database.Cursor
FIELD_TYPE_BLOB, FIELD_TYPE_FLOAT, FIELD_TYPE_INTEGER, FIELD_TYPE_NULL, FIELD_TYPE_STRING
-
-
Constructor Summary
Constructors Constructor Description FeatureCursor(FeatureTable table, Cursor cursor)ConstructorFeatureCursor(FeatureTable table, String[] columns, Cursor cursor)Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected UserInvalidCursor<FeatureColumn,FeatureTable,FeatureRow,? extends UserCursor<FeatureColumn,FeatureTable,FeatureRow>,? extends UserDao<FeatureColumn,FeatureTable,FeatureRow,? extends UserCursor<FeatureColumn,FeatureTable,FeatureRow>>>createInvalidCursor(UserDao dao, UserCursor cursor, List<Integer> invalidPositions, List<FeatureColumn> blobColumns)Create an invalid cursorvoidenableInvalidRequery(FeatureDao dao)Enable requery attempt of invalid rows after iterating through original query rows.FeatureColumnsgetColumns()GeoPackageGeometryDatagetGeometry()Get the geometryFeatureRowgetRow(int[] columnTypes, Object[] values)ObjectgetValue(FeatureColumn column)Handles geometries-
Methods inherited from class mil.nga.geopackage.user.UserCursor
close, enableInvalidRequery, getCount, getId, getInvalidPositions, getQuery, getRow, getTable, getTableName, getValue, getValue, getValue, hasInvalidPositions, moveToNext, setColumns, setQuery, setTable
-
Methods inherited from class mil.nga.geopackage.db.CursorResult
wasNull
-
Methods inherited from class android.database.CursorWrapper
copyStringToBuffer, deactivate, getBlob, getColumnCount, getColumnIndex, getColumnIndexOrThrow, getColumnName, getColumnNames, getDouble, getExtras, getFloat, getInt, getLong, getNotificationUri, getNotificationUris, getPosition, getShort, getString, getType, getWantsAllOnMoveCalls, getWrappedCursor, isAfterLast, isBeforeFirst, isClosed, isFirst, isLast, isNull, move, moveToFirst, moveToLast, moveToPosition, moveToPrevious, registerContentObserver, registerDataSetObserver, requery, respond, setExtras, setNotificationUri, setNotificationUris, unregisterContentObserver, unregisterDataSetObserver
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface mil.nga.geopackage.db.Result
getBlob, getColumnCount, getColumnIndex, getDouble, getFloat, getInt, getLong, getPosition, getShort, getString, getType, moveToFirst, moveToPosition, wasNull
-
-
-
-
Constructor Detail
-
FeatureCursor
public FeatureCursor(FeatureTable table, Cursor cursor)
Constructor- Parameters:
table- feature tablecursor- cursor
-
FeatureCursor
public FeatureCursor(FeatureTable table, String[] columns, Cursor cursor)
Constructor- Parameters:
table- feature tablecolumns- columnscursor- cursor- Since:
- 3.5.0
-
-
Method Detail
-
getRow
public FeatureRow getRow(int[] columnTypes, Object[] values)
-
getValue
public Object getValue(FeatureColumn column)
Handles geometries- Specified by:
getValuein interfaceUserCoreResult<FeatureColumn,FeatureTable,FeatureRow>- Overrides:
getValuein classUserCursor<FeatureColumn,FeatureTable,FeatureRow>
-
getColumns
public FeatureColumns getColumns()
- Specified by:
getColumnsin interfaceUserCoreResult<FeatureColumn,FeatureTable,FeatureRow>- Overrides:
getColumnsin classUserCursor<FeatureColumn,FeatureTable,FeatureRow>
-
getGeometry
public GeoPackageGeometryData getGeometry()
Get the geometry- Returns:
- geometry data
-
enableInvalidRequery
public void enableInvalidRequery(FeatureDao dao)
Enable requery attempt of invalid rows after iterating through original query rows. Only supported forUserCursor.moveToNext()andUserCursor.getRow()usage.- Parameters:
dao- data access object used to perform requery- Since:
- 2.0.0
-
createInvalidCursor
protected UserInvalidCursor<FeatureColumn,FeatureTable,FeatureRow,? extends UserCursor<FeatureColumn,FeatureTable,FeatureRow>,? extends UserDao<FeatureColumn,FeatureTable,FeatureRow,? extends UserCursor<FeatureColumn,FeatureTable,FeatureRow>>> createInvalidCursor(UserDao dao, UserCursor cursor, List<Integer> invalidPositions, List<FeatureColumn> blobColumns)
Create an invalid cursor- Specified by:
createInvalidCursorin classUserCursor<FeatureColumn,FeatureTable,FeatureRow>- Parameters:
dao- data access objectcursor- user cursorinvalidPositions- invalid positionsblobColumns- blob columns- Returns:
- invalid cursor
-
-