Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-notes.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Niedermann <info@niedermann.it>2021-04-21 19:23:17 +0300
committerStefan Niedermann <info@niedermann.it>2021-04-21 19:23:17 +0300
commit546f95a9db0e36efecd841c84ff6825b936a9e27 (patch)
treebb2eccd4a93577002c4f618a5168f74a2f872522 /app/src/main/java/it/niedermann
parent94315a1e6d1899ca9723332cbdffe56863a05399 (diff)
#831 Also update modified date (next to etag) before pulling remote changes
Diffstat (limited to 'app/src/main/java/it/niedermann')
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/persistence/NotesServerSyncTask.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/persistence/NotesServerSyncTask.java b/app/src/main/java/it/niedermann/owncloud/notes/persistence/NotesServerSyncTask.java
index 252490e9..ddc05981 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/persistence/NotesServerSyncTask.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/persistence/NotesServerSyncTask.java
@@ -163,8 +163,13 @@ abstract class NotesServerSyncTask extends Thread {
Log.d(TAG, "pullRemoteChanges() for account " + localAccount.getAccountName());
try {
final Map<Long, Long> idMap = db.getIdMap(localAccount.getId());
+
// FIXME re-reading the localAccount is only a workaround for a not-up-to-date eTag in localAccount.
- final ServerResponse.NotesResponse response = notesClient.getNotes(ssoAccount, localAccount.getModified(), db.getAccountDao().getAccountById(localAccount.getId()).getETag());
+ final Account accountFromDatabase = db.getAccountDao().getAccountById(localAccount.getId());
+ localAccount.setModified(accountFromDatabase.getModified());
+ localAccount.setETag(accountFromDatabase.getETag());
+
+ final ServerResponse.NotesResponse response = notesClient.getNotes(ssoAccount, localAccount.getModified(), localAccount.getETag());
final List<Note> remoteNotes = response.getNotes();
final Set<Long> remoteIDs = new HashSet<>();
// pull remote changes: update or create each remote note