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

github.com/stefan-niedermann/nextcloud-deck.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Niedermann <info@niedermann.it>2021-06-17 20:40:58 +0300
committerStefan Niedermann <info@niedermann.it>2021-06-17 20:40:58 +0300
commit398e1d64aed19ae9e04975ede2c3b1c86e3c47e5 (patch)
tree57ad7a443e9202ef63ee0e24ae8fb9363933d150 /app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/DataBaseAdapter.java
parent714eee03090deb490c797e1a70293e0cb54c92a3 (diff)
Use IResponseCallback in favor of observeOnce for importing accounts
Signed-off-by: Stefan Niedermann <info@niedermann.it>
Diffstat (limited to 'app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/DataBaseAdapter.java')
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/DataBaseAdapter.java33
1 files changed, 11 insertions, 22 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/DataBaseAdapter.java b/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/DataBaseAdapter.java
index eb720e345..703d50730 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/DataBaseAdapter.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/DataBaseAdapter.java
@@ -75,7 +75,6 @@ import it.niedermann.nextcloud.deck.model.widget.filter.FilterWidgetUser;
import it.niedermann.nextcloud.deck.model.widget.filter.dto.FilterWidgetCard;
import it.niedermann.nextcloud.deck.model.widget.singlecard.SingleCardWidgetModel;
import it.niedermann.nextcloud.deck.persistence.sync.adapters.db.util.LiveDataHelper;
-import it.niedermann.nextcloud.deck.persistence.sync.adapters.db.util.WrappedLiveData;
import it.niedermann.nextcloud.deck.ui.upcomingcards.UpcomingCardsAdapterItem;
import it.niedermann.nextcloud.deck.ui.widget.singlecard.SingleCardWidget;
@@ -514,20 +513,19 @@ public class DataBaseAdapter {
db.getLabelDao().delete(label);
}
- public WrappedLiveData<Account> createAccount(Account account) {
- return LiveDataHelper.wrapInLiveData(() -> {
- final long id = db.getAccountDao().insert(account);
+ @WorkerThread
+ public Account createAccountDirectly(@NonNull Account account) {
+ final long id = db.getAccountDao().insert(account);
- widgetNotifierExecutor.submit(() -> {
- DeckLog.verbose("Adding new created", Account.class.getSimpleName(), " with ", id, " to all instances of ", EWidgetType.UPCOMING_WIDGET.name());
- for (FilterWidget widget : getFilterWidgetsByType(EWidgetType.UPCOMING_WIDGET)) {
- widget.getAccounts().add(new FilterWidgetAccount(id, false));
- updateFilterWidgetDirectly(widget);
- }
- notifyFilterWidgetsAboutChangedEntity(FilterWidget.EChangedEntityType.ACCOUNT, id);
- });
- return readAccountDirectly(id);
+ widgetNotifierExecutor.submit(() -> {
+ DeckLog.verbose("Adding new created", Account.class.getSimpleName(), " with ", id, " to all instances of ", EWidgetType.UPCOMING_WIDGET.name());
+ for (FilterWidget widget : getFilterWidgetsByType(EWidgetType.UPCOMING_WIDGET)) {
+ widget.getAccounts().add(new FilterWidgetAccount(id, false));
+ updateFilterWidgetDirectly(widget);
+ }
+ notifyFilterWidgetsAboutChangedEntity(FilterWidget.EChangedEntityType.ACCOUNT, id);
});
+ return readAccountDirectly(id);
}
public void deleteAccount(long id) {
@@ -588,15 +586,6 @@ public class DataBaseAdapter {
return distinctUntilChanged(db.getBoardDao().getBoardsWithEditPermissionsForAccount(accountId));
}
- public WrappedLiveData<Board> createBoard(long accountId, @NonNull Board board) {
- return LiveDataHelper.wrapInLiveData(() -> {
- board.setAccountId(accountId);
- final long id = db.getBoardDao().insert(board);
- notifyFilterWidgetsAboutChangedEntity(FilterWidget.EChangedEntityType.BOARD, id);
- return db.getBoardDao().getBoardByLocalIdDirectly(id);
- });
- }
-
@WorkerThread
public long createBoardDirectly(long accountId, @NonNull Board board) {
board.setAccountId(accountId);