package org.commcare.android.shadows;
import android.annotation.TargetApi;
import android.content.ContentResolver;
import android.database.CharArrayBuffer;
import android.database.ContentObserver;
import android.database.DataSetObserver;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
/**
* Wrapper which translates a plain android SQLite cursor
* into a SQL-Cipher compatible cursor
*
* @author ctsims
*
*/
public class SQLiteCursorNative implements net.sqlcipher.Cursor{
private final android.database.sqlite.SQLiteCursor cursor;
public SQLiteCursorNative(android.database.sqlite.SQLiteCursor cursor) {
this.cursor = cursor;
}
@Override
public int getCount() {
return cursor.getCount();
}
@Override
public int getColumnIndex(String columnName) {
return cursor.getColumnIndex(columnName);
}
@Override
public String[] getColumnNames() {
return cursor.getColumnNames();
}
@Override
public void deactivate() {
cursor.deactivate();
}
@Override
public void close() {
cursor.close();
}
@Override
public boolean requery() {
return cursor.requery();
}
@Override
public byte[] getBlob(int columnIndex) {
return cursor.getBlob(columnIndex);
}
@Override
public String getString(int columnIndex) {
return cursor.getString(columnIndex);
}
@Override
public void copyStringToBuffer(int columnIndex, CharArrayBuffer buffer) {
cursor.copyStringToBuffer(columnIndex, buffer);
}
@Override
public short getShort(int columnIndex) {
return cursor.getShort(columnIndex);
}
@Override
public int getInt(int columnIndex) {
return cursor.getInt(columnIndex);
}
@Override
public long getLong(int columnIndex) {
return cursor.getLong(columnIndex);
}
@Override
public float getFloat(int columnIndex) {
return cursor.getFloat(columnIndex);
}
@Override
public double getDouble(int columnIndex) {
return cursor.getDouble(columnIndex);
}
@Override
public boolean isNull(int columnIndex) {
return cursor.isNull(columnIndex);
}
@Override
public int getType(int columnIndex) {
return cursor.getType(columnIndex);
}
@Override
public int getColumnCount() {
return cursor.getColumnCount();
}
@Override
public boolean isClosed() {
return cursor.isClosed();
}
@Override
public int getColumnIndexOrThrow(String columnName) {
return cursor.getColumnIndexOrThrow(columnName);
}
@Override
public String getColumnName(int columnIndex) {
return cursor.getColumnName(columnIndex);
}
@Override
public void registerContentObserver(ContentObserver observer) {
cursor.registerContentObserver(observer);
}
@Override
public void unregisterContentObserver(ContentObserver observer) {
cursor.unregisterContentObserver(observer);
}
@Override
public void registerDataSetObserver(DataSetObserver observer) {
cursor.registerDataSetObserver(observer);
}
@Override
public void unregisterDataSetObserver(DataSetObserver observer) {
cursor.unregisterDataSetObserver(observer);
}
@Override
public void setNotificationUri(ContentResolver cr, Uri notifyUri) {
cursor.setNotificationUri(cr, notifyUri);
}
@Override
public Uri getNotificationUri() {
return cursor.getNotificationUri();
}
@Override
public boolean getWantsAllOnMoveCalls() {
return cursor.getWantsAllOnMoveCalls();
}
@Override
public Bundle getExtras() {
return cursor.getExtras();
}
@Override
public Bundle respond(Bundle extras) {
return cursor.respond(extras);
}
@Override
public int getPosition() {
return cursor.getPosition();
}
@Override
public boolean move(int offset) {
return cursor.move(offset);
}
@Override
public boolean moveToPosition(int position) {
return cursor.moveToPosition(position);
}
@Override
public boolean moveToFirst() {
return cursor.moveToFirst();
}
@Override
public boolean moveToLast() {
return cursor.moveToLast();
}
@Override
public boolean moveToNext() {
return cursor.moveToNext();
}
@Override
public boolean moveToPrevious() {
return cursor.moveToPrevious();
}
@Override
public boolean isFirst() {
return cursor.isFirst();
}
@Override
public boolean isLast() {
return cursor.isLast();
}
@Override
public boolean isBeforeFirst() {
return cursor.isBeforeFirst();
}
@Override
public boolean isAfterLast() {
return cursor.isAfterLast();
}
@Override
@TargetApi(Build.VERSION_CODES.M)
public void setExtras(Bundle extras) {
cursor.setExtras(extras);
}
}