145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garciapackage com.xtremelabs.robolectric.shadows; 245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garciaimport android.content.ContentResolver; 445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garciaimport android.database.*; 545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garciaimport android.net.Uri; 645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garciaimport android.os.Bundle; 745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garciaimport com.xtremelabs.robolectric.internal.Implementation; 845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garciaimport com.xtremelabs.robolectric.internal.Implements; 945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 1045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia@Implements(CursorWrapper.class) 1145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garciapublic class ShadowCursorWrapper implements Cursor { 1245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia private Cursor wrappedCursor; 1345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 1445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public void __constructor__(Cursor c) { 1545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia wrappedCursor = c; 1645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 1745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 1845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 1945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public int getCount() { 2045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getCount(); 2145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 2245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 2345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 2445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public int getPosition() { 2545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getPosition(); 2645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 2745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 2845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 2945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public boolean move(int i) { 3045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.move(i); 3145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 3245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 3345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 3445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public boolean moveToPosition(int i) { 3545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.moveToPosition(i); 3645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 3745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 3845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 3945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public boolean moveToFirst() { 4045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.moveToFirst(); 4145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 4245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 4345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 4445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public boolean moveToLast() { 4545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.moveToLast(); 4645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 4745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 4845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 4945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public boolean moveToNext() { 5045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.moveToNext(); 5145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 5245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 5345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 5445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public boolean moveToPrevious() { 5545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.moveToPrevious(); 5645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 5745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 5845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 5945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public boolean isFirst() { 6045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.isFirst(); 6145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 6245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 6345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 6445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public boolean isLast() { 6545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.isLast(); 6645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 6745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 6845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 6945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public boolean isBeforeFirst() { 7045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.isBeforeFirst(); 7145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 7245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 7345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 7445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public boolean isAfterLast() { 7545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.isAfterLast(); 7645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 7745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 7845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 7945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public int getColumnIndex(String s) { 8045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getColumnIndex(s); 8145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 8245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 8345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 8445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public int getColumnIndexOrThrow(String s) throws IllegalArgumentException { 8545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getColumnIndexOrThrow(s); 8645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 8745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 8845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 8945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public String getColumnName(int i) { 9045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getColumnName(i); 9145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 9245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 9345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 9445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public String[] getColumnNames() { 9545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getColumnNames(); 9645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 9745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 9845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 9945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public int getColumnCount() { 10045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getColumnCount(); 10145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 10245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 10345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 10445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public byte[] getBlob(int i) { 10545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getBlob(i); 10645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 10745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 10845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 10945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public String getString(int i) { 11045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getString(i); 11145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 11245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 11345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 11445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public void copyStringToBuffer(int i, CharArrayBuffer charArrayBuffer) { 11545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia wrappedCursor.copyStringToBuffer(i, charArrayBuffer); 11645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 11745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 11845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 11945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public short getShort(int i) { 12045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getShort(i); 12145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 12245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 12345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 12445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public int getInt(int i) { 12545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getInt(i); 12645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 12745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 12845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 12945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public long getLong(int i) { 13045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getLong(i); 13145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 13245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 13345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 13445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public float getFloat(int i) { 13545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getFloat(i); 13645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 13745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 13845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 13945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public double getDouble(int i) { 14045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getDouble(i); 14145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 14245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 14345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 14445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public boolean isNull(int i) { 14545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.isNull(i); 14645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 14745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 14845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 14945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public void deactivate() { 15045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia wrappedCursor.deactivate(); 15145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 15245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 15345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 15445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public boolean requery() { 15545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.requery(); 15645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 15745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 15845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 15945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public void close() { 16045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia wrappedCursor.close(); 16145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 16245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 16345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 16445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public boolean isClosed() { 16545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.isClosed(); 16645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 16745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 16845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 16945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public void registerContentObserver(ContentObserver contentObserver) { 17045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia wrappedCursor.registerContentObserver(contentObserver); 17145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 17245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 17345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 17445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public void unregisterContentObserver(ContentObserver contentObserver) { 17545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia wrappedCursor.unregisterContentObserver(contentObserver); 17645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 17745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 17845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 17945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public void registerDataSetObserver(DataSetObserver dataSetObserver) { 18045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia wrappedCursor.registerDataSetObserver(dataSetObserver); 18145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 18245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 18345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 18445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public void unregisterDataSetObserver(DataSetObserver dataSetObserver) { 18545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia wrappedCursor.unregisterDataSetObserver(dataSetObserver); 18645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 18745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 18845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 18945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public void setNotificationUri(ContentResolver contentResolver, Uri uri) { 19045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia wrappedCursor.setNotificationUri(contentResolver, uri); 19145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 19245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 19345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 19445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public boolean getWantsAllOnMoveCalls() { 19545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getWantsAllOnMoveCalls(); 19645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 19745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 19845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 19945416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public Bundle getExtras() { 20045416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.getExtras(); 20145416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 20245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 20345416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia @Implementation 20445416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia public Bundle respond(Bundle bundle) { 20545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor.respond(bundle); 20645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 207e057483dbccea1e7373aed776bb14ef85aaa93c7Michael Portuesi 208e057483dbccea1e7373aed776bb14ef85aaa93c7Michael Portuesi @Implementation 209e057483dbccea1e7373aed776bb14ef85aaa93c7Michael Portuesi public int getType(int columnIndex) { 210e057483dbccea1e7373aed776bb14ef85aaa93c7Michael Portuesi return 0; 211e057483dbccea1e7373aed776bb14ef85aaa93c7Michael Portuesi } 21245416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 2130bcbd37475c4774b3287f0a403ac26ca84a029efMichael Portuesi @Implementation 214e057483dbccea1e7373aed776bb14ef85aaa93c7Michael Portuesi public Cursor getWrappedCursor() { 21545416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia return wrappedCursor; 21645416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia } 21745416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia 21845416dcb93425cc62d7848c1afa55f68825ec6e4Diego Garcia} 219