Refactored all the other classes to support multi user. Clearing the app data is required before launching the app.

This commit is contained in:
Alex Ning
2019-08-07 23:28:02 +08:00
parent 7f2bc01180
commit 425bc857cf
95 changed files with 1151 additions and 764 deletions

View File

@ -6,11 +6,19 @@ import androidx.room.Insert;
import androidx.room.OnConflictStrategy;
import androidx.room.Query;
import java.util.List;
@Dao
public interface AccountDao {
@Insert(onConflict = OnConflictStrategy.REPLACE)
void insert(Account account);
@Query("SELECT * FROM accounts WHERE is_current_user = 0")
List<Account> getAllNonCurrentAccounts();
@Query("UPDATE accounts SET is_current_user = 0 WHERE is_current_user = 1")
void markAllAccountsNonCurrent();
@Query("DELETE FROM accounts")
void deleteAllAccounts();
@ -19,4 +27,7 @@ public interface AccountDao {
@Query("SELECT * FROM accounts WHERE username = :userName COLLATE NOCASE LIMIT 1")
Account getAccountData(String userName);
@Query("SELECT * FROM accounts WHERE is_current_user = 1 LIMIT 1")
Account getCurrentAccount();
}