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:
authordesperateCoder <echotodevnull@gmail.com>2019-05-14 20:27:33 +0300
committerdesperateCoder <echotodevnull@gmail.com>2019-05-14 20:27:33 +0300
commit46b1a64476f42d7b2b641ad56b6ae676e8d96b9c (patch)
tree94a6301e2728ac0151e13bb80c034c9ff0f8f787 /app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db
parentd18ef378d228b1ce91cb1419cec07b8314cb027f (diff)
#51 create and assign label in single step
Diffstat (limited to 'app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db')
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/DataBaseAdapter.java13
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/dao/BoardDao.java7
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/dao/CardDao.java7
3 files changed, 24 insertions, 3 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 384655c46..283fef11c 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
@@ -90,6 +90,9 @@ public class DataBaseAdapter {
readRelationsForCard(card);
return card;
}
+ public FullCard getFullCardByLocalIdDirectly(long accountId, long localId) {
+ return db.getCardDao().getFullCardByLocalIdDirectly(accountId, localId);
+ }
private void readRelationsForCard(FullCard card) {
if (card != null){
@@ -305,7 +308,11 @@ public class DataBaseAdapter {
public LiveData<FullCard> getCardByLocalId(long accountId, long localCardId) {
return LiveDataHelper.interceptLiveData(db.getCardDao().getFullCardByLocalId(accountId, localCardId), this::readRelationsForCard);
}
-
+
+ public Card getCardByLocalIdDirectly(long accountId, long localCardId) {
+ return db.getCardDao().getCardByLocalIdDirectly(accountId, localCardId);
+ }
+
public long createCard(long accountId, Card card) {
card.setAccountId(accountId);
return db.getCardDao().insert(card);
@@ -419,4 +426,8 @@ public class DataBaseAdapter {
public List<Label> getLocallyChangedLabels(long accountId, long boardId) {
return db.getLabelDao().getLocallyChangedLabelsDirectly(accountId, boardId);
}
+
+ public Board getBoardByLocalCardIdDirectly(long localCardId) {
+ return db.getBoardDao().getBoardByLocalCardIdDirectly(localCardId);
+ }
}
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/dao/BoardDao.java b/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/dao/BoardDao.java
index 3c206676f..e74922c60 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/dao/BoardDao.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/dao/BoardDao.java
@@ -1,11 +1,12 @@
package it.niedermann.nextcloud.deck.persistence.sync.adapters.db.dao;
-import java.util.List;
-
import androidx.lifecycle.LiveData;
import androidx.room.Dao;
import androidx.room.Query;
import androidx.room.Transaction;
+
+import java.util.List;
+
import it.niedermann.nextcloud.deck.model.Board;
import it.niedermann.nextcloud.deck.model.full.FullBoard;
@@ -41,4 +42,6 @@ public interface BoardDao extends GenericDao<Board> {
LiveData<FullBoard> getFullBoardById(final long accountId, final long localId);
+ @Query("SELECT b.* FROM board b JOIN stack s ON s.boardId = b.localId JOIN card c ON c.localId = :localCardId")
+ Board getBoardByLocalCardIdDirectly(long localCardId);
} \ No newline at end of file
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/dao/CardDao.java b/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/dao/CardDao.java
index 441abc3e3..6c0c7dcf3 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/dao/CardDao.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/persistence/sync/adapters/db/dao/CardDao.java
@@ -23,6 +23,13 @@ public interface CardDao extends GenericDao<Card> {
@Query("SELECT * FROM card WHERE accountId = :accountId and id = :remoteId")
FullCard getFullCardByRemoteIdDirectly(final long accountId, final long remoteId);
+ @Query("SELECT * FROM card WHERE accountId = :accountId and localId = :localId")
+ Card getCardByLocalIdDirectly(final long accountId, final long localId);
+
+ @Transaction
+ @Query("SELECT * FROM card WHERE accountId = :accountId and localId = :localId")
+ FullCard getFullCardByLocalIdDirectly(final long accountId, final long localId);
+
@Transaction
@Query("SELECT * FROM card WHERE accountId = :accountId AND stackId = :localStackId order by `order`, createdAt asc")
LiveData<List<FullCard>> getFullCardsForStack(final long accountId, final long localStackId);