Package mil.nga.geopackage.user
Class UserCursor<TColumn extends UserColumn,TTable extends UserTable<TColumn>,TRow extends UserRow<TColumn,TTable>>
- java.lang.Object
-
- android.database.CursorWrapper
-
- mil.nga.geopackage.db.CursorResult
-
- mil.nga.geopackage.user.UserCursor<TColumn,TTable,TRow>
-
- Type Parameters:
TColumn- column typeTTable- table typeTRow- row type
- All Implemented Interfaces:
Cursor,Closeable,AutoCloseable,Result,UserCoreResult<TColumn,TTable,TRow>
- Direct Known Subclasses:
AttributesCursor,FeatureCursor,TileCursor,UserCustomCursor
public abstract class UserCursor<TColumn extends UserColumn,TTable extends UserTable<TColumn>,TRow extends UserRow<TColumn,TTable>> extends CursorResult implements UserCoreResult<TColumn,TTable,TRow>
Abstract User Cursor
-
-
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 Modifier Constructor Description protectedUserCursor(TTable table, Cursor cursor)ConstructorprotectedUserCursor(TTable table, String[] columns, Cursor cursor)ConstructorprotectedUserCursor(TTable table, UserColumns<TColumn> columns, Cursor cursor)Constructor
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidclose()protected abstract UserInvalidCursor<TColumn,TTable,TRow,? extends UserCursor<TColumn,TTable,TRow>,? extends UserDao<TColumn,TTable,TRow,? extends UserCursor<TColumn,TTable,TRow>>>createInvalidCursor(UserDao dao, UserCursor cursor, List<Integer> invalidPositions, List<TColumn> blobColumns)Create an invalid cursorprotected voidenableInvalidRequery(UserDao<TColumn,TTable,TRow,? extends UserCursor<TColumn,TTable,TRow>> dao)Enable requery attempt of invalid rows after iterating through original query rows.UserColumns<TColumn>getColumns()intgetCount()longgetId()List<Integer>getInvalidPositions()Get the invalid positions found when retrieving rowsUserQuerygetQuery()Get the user queryTRowgetRow()TTablegetTable()StringgetTableName()ObjectgetValue(int index)ObjectgetValue(int index, GeoPackageDataType dataType)ObjectgetValue(String columnName)ObjectgetValue(TColumn column)booleanhasInvalidPositions()Determine if invalid positions were found when retrieving rows or if all are invalid (null)booleanmoveToNext()voidsetColumns(UserColumns<TColumn> columns)Set the columnsvoidsetQuery(UserQuery query)Set the user queryvoidsetTable(TTable table)Set the table-
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
-
Methods inherited from interface mil.nga.geopackage.user.UserCoreResult
getRow
-
-
-
-
Constructor Detail
-
UserCursor
protected UserCursor(TTable table, Cursor cursor)
Constructor- Parameters:
table- tablecursor- cursor
-
UserCursor
protected UserCursor(TTable table, String[] columns, Cursor cursor)
Constructor- Parameters:
table- tablecolumns- columnscursor- cursor- Since:
- 3.5.0
-
UserCursor
protected UserCursor(TTable table, UserColumns<TColumn> columns, Cursor cursor)
Constructor- Parameters:
table- tablecolumns- columnscursor- cursor- Since:
- 3.5.0
-
-
Method Detail
-
getValue
public Object getValue(int index)
- Specified by:
getValuein interfaceResult- Specified by:
getValuein interfaceUserCoreResult<TColumn extends UserColumn,TTable extends UserTable<TColumn>,TRow extends UserRow<TColumn,TTable>>- Overrides:
getValuein classCursorResult
-
getId
public long getId()
-
setTable
public void setTable(TTable table)
Set the table- Parameters:
table- table- Since:
- 3.2.0
-
getTable
public TTable getTable()
-
getTableName
public String getTableName()
- Specified by:
getTableNamein interfaceUserCoreResult<TColumn extends UserColumn,TTable extends UserTable<TColumn>,TRow extends UserRow<TColumn,TTable>>
-
setColumns
public void setColumns(UserColumns<TColumn> columns)
Set the columns- Parameters:
columns- columns- Since:
- 3.5.0
-
getColumns
public UserColumns<TColumn> getColumns()
- Specified by:
getColumnsin interfaceUserCoreResult<TColumn extends UserColumn,TTable extends UserTable<TColumn>,TRow extends UserRow<TColumn,TTable>>
-
getInvalidPositions
public List<Integer> getInvalidPositions()
Get the invalid positions found when retrieving rows- Returns:
- invalid positions, empty if none, null if all invalid
- Since:
- 2.0.0
-
hasInvalidPositions
public boolean hasInvalidPositions()
Determine if invalid positions were found when retrieving rows or if all are invalid (null)- Returns:
- true if invalid positions
- Since:
- 2.0.0
-
getCount
public int getCount()
- Specified by:
getCountin interfaceCursor- Specified by:
getCountin interfaceUserCoreResult<TColumn extends UserColumn,TTable extends UserTable<TColumn>,TRow extends UserRow<TColumn,TTable>>- Overrides:
getCountin classCursorWrapper
-
moveToNext
public boolean moveToNext()
- Specified by:
moveToNextin interfaceCursor- Specified by:
moveToNextin interfaceResult- Overrides:
moveToNextin classCursorWrapper
-
getRow
public TRow getRow()
-
getValue
public Object getValue(int index, GeoPackageDataType dataType)
- Specified by:
getValuein interfaceResult- Overrides:
getValuein classCursorResult
-
close
public void close()
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein interfaceCursor- Specified by:
closein interfaceResult- Overrides:
closein classCursorWrapper
-
setQuery
public void setQuery(UserQuery query)
Set the user query- Parameters:
query- user query- Since:
- 2.0.0
-
getQuery
public UserQuery getQuery()
Get the user query- Returns:
- user query
- Since:
- 2.0.0
-
enableInvalidRequery
protected void enableInvalidRequery(UserDao<TColumn,TTable,TRow,? extends UserCursor<TColumn,TTable,TRow>> dao)
Enable requery attempt of invalid rows after iterating through original query rows. Only supported formoveToNext()andgetRow()usage.- Parameters:
dao- data access object used to perform requery- Since:
- 2.0.0
-
createInvalidCursor
protected abstract UserInvalidCursor<TColumn,TTable,TRow,? extends UserCursor<TColumn,TTable,TRow>,? extends UserDao<TColumn,TTable,TRow,? extends UserCursor<TColumn,TTable,TRow>>> createInvalidCursor(UserDao dao, UserCursor cursor, List<Integer> invalidPositions, List<TColumn> blobColumns)
Create an invalid cursor- Parameters:
dao- data access objectcursor- user cursorinvalidPositions- invalid positionsblobColumns- blob columns- Returns:
- invalid cursor
-
-