Readd date of last sync using a local value instead of using FreshRSS' one

This commit is contained in:
Shinokuni 2020-01-05 19:06:10 +01:00
parent 19ca5a7398
commit 45e594d4f2
2 changed files with 25 additions and 20 deletions

View File

@ -20,6 +20,8 @@ import com.readrops.readropslibrary.services.freshrss.FreshRSSAPI;
import com.readrops.readropslibrary.services.freshrss.FreshRSSCredentials; import com.readrops.readropslibrary.services.freshrss.FreshRSSCredentials;
import com.readrops.readropslibrary.services.freshrss.FreshRSSSyncData; import com.readrops.readropslibrary.services.freshrss.FreshRSSSyncData;
import org.joda.time.DateTime;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
@ -90,6 +92,7 @@ public class FreshRSSRepository extends ARepository<FreshRSSAPI> {
} else } else
syncType = SyncType.INITIAL_SYNC; syncType = SyncType.INITIAL_SYNC;
long newLastModified = DateTime.now().getMillis() / 1000L;
TimingLogger logger = new TimingLogger(TAG, "FreshRSS sync timer"); TimingLogger logger = new TimingLogger(TAG, "FreshRSS sync timer");
return Single.<FreshRSSSyncData>create(emitter -> { return Single.<FreshRSSSyncData>create(emitter -> {
@ -109,10 +112,11 @@ public class FreshRSSRepository extends ARepository<FreshRSSAPI> {
insertItems(syncResult.getItems(), syncType == SyncType.INITIAL_SYNC); insertItems(syncResult.getItems(), syncType == SyncType.INITIAL_SYNC);
logger.addSplit("items insertion"); logger.addSplit("items insertion");
//account.setLastModified(syncResult.getLastUpdated()); account.setLastModified(newLastModified);
//database.accountDao().updateLastModified(account.getId(), syncResult.getLastUpdated()); database.accountDao().updateLastModified(account.getId(), newLastModified);
//database.itemDao().resetReadChanges(account.getId()); database.itemDao().resetReadChanges();
logger.addSplit("reset read changes");
logger.dumpToLog(); logger.dumpToLog();
return Observable.empty(); return Observable.empty();

View File

@ -97,7 +97,8 @@ public class FreshRSSAPI extends API<FreshRSSService> {
public Single<FreshRSSSyncResult> sync(@NonNull SyncType syncType, @NonNull FreshRSSSyncData syncData, @NonNull String writeToken) { public Single<FreshRSSSyncResult> sync(@NonNull SyncType syncType, @NonNull FreshRSSSyncData syncData, @NonNull String writeToken) {
FreshRSSSyncResult syncResult = new FreshRSSSyncResult(); FreshRSSSyncResult syncResult = new FreshRSSSyncResult();
return getFolders() return setItemsReadState(syncData, writeToken)
.andThen(getFolders()
.flatMap(freshRSSFolders -> { .flatMap(freshRSSFolders -> {
syncResult.setFolders(freshRSSFolders); syncResult.setFolders(freshRSSFolders);
@ -116,7 +117,7 @@ public class FreshRSSAPI extends API<FreshRSSService> {
syncResult.setItems(freshRSSItems); syncResult.setItems(freshRSSItems);
return Single.just(syncResult); return Single.just(syncResult);
}); }));
} }
/** /**