diff options
Diffstat (limited to 'android/arch/paging/DataSource.java')
-rw-r--r-- | android/arch/paging/DataSource.java | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/android/arch/paging/DataSource.java b/android/arch/paging/DataSource.java index 524e570a..48fbec5f 100644 --- a/android/arch/paging/DataSource.java +++ b/android/arch/paging/DataSource.java @@ -17,7 +17,6 @@ package android.arch.paging; import android.support.annotation.AnyThread; -import android.support.annotation.NonNull; import android.support.annotation.WorkerThread; import java.util.concurrent.CopyOnWriteArrayList; @@ -61,6 +60,15 @@ public abstract class DataSource<Key, Value> { public static int COUNT_UNDEFINED = -1; /** + * Number of items that this DataSource can provide in total, or {@link #COUNT_UNDEFINED}. + * + * @return number of items that this DataSource can provide in total, or + * {@link #COUNT_UNDEFINED} if expensive or undesired to compute. + */ + @WorkerThread + public abstract int countItems(); + + /** * Returns true if the data source guaranteed to produce a contiguous set of items, * never producing gaps. */ @@ -103,7 +111,7 @@ public abstract class DataSource<Key, Value> { */ @AnyThread @SuppressWarnings("WeakerAccess") - public void addInvalidatedCallback(@NonNull InvalidatedCallback onInvalidatedCallback) { + public void addInvalidatedCallback(InvalidatedCallback onInvalidatedCallback) { mOnInvalidatedCallbacks.add(onInvalidatedCallback); } @@ -114,7 +122,7 @@ public abstract class DataSource<Key, Value> { */ @AnyThread @SuppressWarnings("WeakerAccess") - public void removeInvalidatedCallback(@NonNull InvalidatedCallback onInvalidatedCallback) { + public void removeInvalidatedCallback(InvalidatedCallback onInvalidatedCallback) { mOnInvalidatedCallbacks.remove(onInvalidatedCallback); } |