aboutsummaryrefslogtreecommitdiff
path: root/WordPress/src/main/java/org/wordpress/android/datasets/PeopleTable.java
diff options
context:
space:
mode:
authorOguz Kocer <oguz.kocer@automattic.com>2016-05-24 18:04:34 +0300
committerOguz Kocer <oguz.kocer@automattic.com>2016-05-24 18:04:34 +0300
commit314989f6a444d7d4fedbf230d0bd0faeb2772dd3 (patch)
tree035159d18f465ed87607e5fec93c2d805e5bd9e9 /WordPress/src/main/java/org/wordpress/android/datasets/PeopleTable.java
parentff286e7e8fe9b56da4d6399412357a5dda83d448 (diff)
downloadgradle-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.java12
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);