aboutsummaryrefslogtreecommitdiff
path: root/WordPress/src/main/java/org/wordpress
diff options
context:
space:
mode:
authorOguz Kocer <oguz.kocer@automattic.com>2016-05-24 15:15:07 +0300
committerOguz Kocer <oguz.kocer@automattic.com>2016-05-24 15:15:07 +0300
commit9b40515d3a69d6534f92ceaa05df757193717b96 (patch)
tree47da307127cdba09a30616cc9d9a2bb9e9a720aa /WordPress/src/main/java/org/wordpress
parent117d7feca466eb0a268a0ea7955f9b3211e954fd (diff)
downloadgradle-perf-android-medium-9b40515d3a69d6534f92ceaa05df757193717b96.tar.gz
Use offset parameter and only remove users from blog if it's a fresh list
Diffstat (limited to 'WordPress/src/main/java/org/wordpress')
-rw-r--r--WordPress/src/main/java/org/wordpress/android/datasets/PeopleTable.java6
-rw-r--r--WordPress/src/main/java/org/wordpress/android/ui/people/PeopleManagementActivity.java11
2 files changed, 10 insertions, 7 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 bdd547568..0107bf8f1 100644
--- a/WordPress/src/main/java/org/wordpress/android/datasets/PeopleTable.java
+++ b/WordPress/src/main/java/org/wordpress/android/datasets/PeopleTable.java
@@ -65,11 +65,13 @@ public class PeopleTable {
database.insertWithOnConflict(PEOPLE_TABLE, null, values, SQLiteDatabase.CONFLICT_REPLACE);
}
- public static void savePeople(List<Person> peopleList, int localTableBlogId) {
+ public static void savePeople(List<Person> peopleList, int localTableBlogId, boolean isFreshList) {
getWritableDb().beginTransaction();
try {
//We have a fresh list, remove the previous list of people in case it was deleted on remote
- PeopleTable.deletePeopleForLocalBlogId(localTableBlogId);
+ if (isFreshList) {
+ PeopleTable.deletePeopleForLocalBlogId(localTableBlogId);
+ }
for (Person person : peopleList) {
PeopleTable.save(person);
diff --git a/WordPress/src/main/java/org/wordpress/android/ui/people/PeopleManagementActivity.java b/WordPress/src/main/java/org/wordpress/android/ui/people/PeopleManagementActivity.java
index 6d3394911..728889b25 100644
--- a/WordPress/src/main/java/org/wordpress/android/ui/people/PeopleManagementActivity.java
+++ b/WordPress/src/main/java/org/wordpress/android/ui/people/PeopleManagementActivity.java
@@ -57,7 +57,7 @@ public class PeopleManagementActivity extends AppCompatActivity
.commit();
}
- fetchUsersList(blog.getDotComBlogId(), blog.getLocalTableBlogId());
+ fetchUsersList(blog.getDotComBlogId(), blog.getLocalTableBlogId(), 0);
}
@Override
@@ -85,11 +85,12 @@ public class PeopleManagementActivity extends AppCompatActivity
return super.onOptionsItemSelected(item);
}
- private void fetchUsersList(String dotComBlogId, final int localTableBlogId) {
- PeopleUtils.fetchUsers(dotComBlogId, localTableBlogId, new PeopleUtils.FetchUsersCallback() {
+ private void fetchUsersList(String dotComBlogId, final int localTableBlogId, final int offset) {
+ PeopleUtils.fetchUsers(dotComBlogId, localTableBlogId, offset, new PeopleUtils.FetchUsersCallback() {
@Override
- public void onSuccess(List<Person> peopleList) {
- PeopleTable.savePeople(peopleList, localTableBlogId);
+ public void onSuccess(List<Person> peopleList, boolean isEndOfList) {
+ boolean isFreshList = (offset == 0);
+ PeopleTable.savePeople(peopleList, localTableBlogId, isFreshList);
refreshOnScreenFragmentDetails();
}