Skip to content

Commit 4fc4c3c

Browse files
committed
refactoed to code to use android/database/CursorWindow instead of our own; solves fillWindow, CrossProcessCursor and Observable issues
1 parent e914c2c commit 4fc4c3c

25 files changed

+94
-1085
lines changed

src/info/guardianproject/database/AbstractCursor.java

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,11 @@
2222

2323
import android.content.ContentResolver;
2424
import android.database.CharArrayBuffer;
25+
import android.database.ContentObservable;
26+
import android.database.ContentObserver;
27+
import android.database.CursorWindow;
28+
import android.database.DataSetObservable;
29+
import android.database.DataSetObserver;
2530
import android.net.Uri;
2631
import android.os.Bundle;
2732
import android.util.Config;
@@ -32,7 +37,7 @@
3237
* This is an abstract cursor class that handles a lot of the common code
3338
* that all cursors need to deal with and is provided for convenience reasons.
3439
*/
35-
public abstract class AbstractCursor implements CrossProcessCursor {
40+
public abstract class AbstractCursor implements android.database.CrossProcessCursor {
3641
private static final String TAG = "Cursor";
3742

3843
DataSetObservable mDataSetObservable = new DataSetObservable();
@@ -199,11 +204,14 @@ public final boolean moveToPosition(int position) {
199204
* Copy data from cursor to CursorWindow
200205
* @param position start position of data
201206
* @param window
202-
*/
203-
public void fillWindow(int position, CursorWindow window) {
204-
if (position < 0 || position > getCount()) {
207+
*/
208+
public void fillWindow(int position, android.database.CursorWindow window) {
209+
210+
211+
if (position < 0 || position > getCount()) {
205212
return;
206213
}
214+
207215
window.acquireReference();
208216
try {
209217
int oldpos = mPos;
@@ -475,6 +483,7 @@ protected DataSetObservable getDataSetObservable() {
475483
return mDataSetObservable;
476484

477485
}
486+
478487
public void registerDataSetObserver(DataSetObserver observer) {
479488
mDataSetObservable.registerObserver(observer);
480489

@@ -608,6 +617,8 @@ public void onChange(boolean selfChange) {
608617
cursor.onChange(false);
609618
}
610619
}
620+
621+
611622
}
612623

613624
/**

src/info/guardianproject/database/AbstractWindowedCursor.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package info.guardianproject.database;
1818

1919
import android.database.CharArrayBuffer;
20+
import android.database.CursorWindow;
2021

2122
/**
2223
* A base class for Cursors that store their data in {@link CursorWindow}s.

src/info/guardianproject/database/BulkCursorNative.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,15 @@
1616

1717
package info.guardianproject.database;
1818

19+
import java.util.HashMap;
20+
import java.util.Map;
21+
22+
import android.database.CursorWindow;
1923
import android.os.Binder;
20-
import android.os.RemoteException;
24+
import android.os.Bundle;
2125
import android.os.IBinder;
2226
import android.os.Parcel;
23-
import android.os.Bundle;
24-
25-
import java.util.HashMap;
26-
import java.util.Map;
27+
import android.os.RemoteException;
2728

2829
/**
2930
* Native implementation of the bulk cursor. This is only for use in implementing

src/info/guardianproject/database/BulkCursorToCursorAdaptor.java

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,12 @@
1818

1919
import android.database.CharArrayBuffer;
2020
import android.database.ContentObserver;
21+
import android.database.CursorWindow;
2122
import android.database.DataSetObserver;
22-
import android.os.RemoteException;
2323
import android.os.Bundle;
24+
import android.os.RemoteException;
2425
import android.util.Log;
2526

26-
import java.util.Map;
27-
2827
/**
2928
* Adapts an {@link IBulkCursor} to a {@link Cursor} for use in the local
3029
* process.
@@ -89,7 +88,7 @@ public synchronized IContentObserver getObserver() {
8988
if (mObserverBridge == null) {
9089
mObserverBridge = new SelfContentObserver(this);
9190
}
92-
return mObserverBridge.getContentObserver();
91+
return null;//mObserverBridge.getContentObserver();
9392
}
9493

9594
@Override
@@ -181,6 +180,7 @@ public boolean requery() {
181180
* @hide
182181
* @deprecated
183182
*/
183+
/*
184184
@Override
185185
public boolean deleteRow() {
186186
try {
@@ -207,7 +207,7 @@ public boolean deleteRow() {
207207
Log.e(TAG, "Unable to delete row because the remote process is dead");
208208
return false;
209209
}
210-
}
210+
}*/
211211

212212
@Override
213213
public String[] getColumnNames() {
@@ -225,7 +225,7 @@ public String[] getColumnNames() {
225225
/**
226226
* @hide
227227
* @deprecated
228-
*/
228+
*//*
229229
@Override
230230
public boolean commitUpdates(Map<? extends Long,
231231
? extends Map<String,Object>> additionalValues) {
@@ -258,7 +258,7 @@ public boolean commitUpdates(Map<? extends Long,
258258
return false;
259259
}
260260
}
261-
}
261+
}*/
262262

263263
@Override
264264
public Bundle getExtras() {
@@ -315,4 +315,5 @@ public void unregisterDataSetObserver(DataSetObserver observer) {
315315
}
316316

317317

318+
318319
}

src/info/guardianproject/database/ContentObservable.java

Lines changed: 0 additions & 56 deletions
This file was deleted.

src/info/guardianproject/database/ContentObserver.java

Lines changed: 0 additions & 133 deletions
This file was deleted.

src/info/guardianproject/database/CrossProcessCursor.java

Lines changed: 0 additions & 42 deletions
This file was deleted.

src/info/guardianproject/database/Cursor.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@
2020

2121
import android.content.ContentResolver;
2222
import android.database.CharArrayBuffer;
23+
import android.database.ContentObserver;
24+
import android.database.DataSetObserver;
2325
import android.net.Uri;
2426
import android.os.Bundle;
2527

0 commit comments

Comments
 (0)