diff options
author | Oguz Kocer <oguz.kocer@automattic.com> | 2016-05-24 18:04:34 +0300 |
---|---|---|
committer | Oguz Kocer <oguz.kocer@automattic.com> | 2016-05-24 18:04:34 +0300 |
commit | 314989f6a444d7d4fedbf230d0bd0faeb2772dd3 (patch) | |
tree | 035159d18f465ed87607e5fec93c2d805e5bd9e9 /WordPress/src/main/java/org/wordpress/android/datasets/PeopleTable.java | |
parent | ff286e7e8fe9b56da4d6399412357a5dda83d448 (diff) | |
download | gradle-perf-android-medium-314989f6a444d7d4fedbf230d0bd0faeb2772dd3.tar.gz |
When People page is created, remove all users except for 1st page
Diffstat (limited to 'WordPress/src/main/java/org/wordpress/android/datasets/PeopleTable.java')
-rw-r--r-- | WordPress/src/main/java/org/wordpress/android/datasets/PeopleTable.java | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/WordPress/src/main/java/org/wordpress/android/datasets/PeopleTable.java b/WordPress/src/main/java/org/wordpress/android/datasets/PeopleTable.java index 6b5220952..d9221ad92 100644 --- a/WordPress/src/main/java/org/wordpress/android/datasets/PeopleTable.java +++ b/WordPress/src/main/java/org/wordpress/android/datasets/PeopleTable.java @@ -6,6 +6,7 @@ import android.database.sqlite.SQLiteDatabase; import org.wordpress.android.WordPress; import org.wordpress.android.models.Person; +import org.wordpress.android.ui.people.utils.PeopleUtils; import org.wordpress.android.util.AppLog; import org.wordpress.android.util.SqlUtils; @@ -93,6 +94,17 @@ public class PeopleTable { getWritableDb().delete(PEOPLE_TABLE, "local_blog_id=?", args); } + public static void deletePeopleForLocalBlogIdExceptForFirstPage(int localTableBlogId) { + int size = getPeopleCountForLocalBlogId(localTableBlogId); + int fetchLimit = PeopleUtils.FETCH_USERS_LIMIT; + if (size > fetchLimit) { + int deleteCount = size - fetchLimit; + String[] args = new String[]{Integer.toString(deleteCount), Integer.toString(localTableBlogId)}; + getWritableDb().delete(PEOPLE_TABLE, "person_id " + + "IN (SELECT person_id FROM people ORDER BY display_name DESC LIMIT ?) AND local_blog_id=?", args); + } + } + public static void deletePerson(long personID, int localTableBlogId) { String[] args = new String[]{Long.toString(personID), Integer.toString(localTableBlogId)}; getWritableDb().delete(PEOPLE_TABLE, "person_id=? AND local_blog_id=?", args); |