Try to fix errors when saving things

This commit is contained in:
Phillip Thelen 2019-11-06 18:26:50 +01:00
parent 25eace34cf
commit 5f159856a9
4 changed files with 7 additions and 7 deletions

View file

@ -124,7 +124,7 @@ class SocialRepositoryImpl(localRepository: SocialLocalRepository, apiClient: Ap
}
override fun retrieveGroup(id: String): Flowable<Group> {
return Flowable.zip(apiClient.getGroup(id).doOnNext { localRepository.save(it) }, retrieveGroupChat(id)
return Flowable.zip(apiClient.getGroup(id).doOnNext { localRepository.saveSyncronous(it) }, retrieveGroupChat(id)
.toFlowable(),
BiFunction<Group, List<ChatMessage>, Group> { group, _ ->
group

View file

@ -119,9 +119,9 @@ class TaskRepositoryImpl(localRepository: TaskLocalRepository, apiClient: ApiCli
private fun handleTaskResponse(user: User, res: TaskDirectionData, task: Task, up: Boolean, localDelta: Float) {
val userID = user.id
val taskID = task.id
this.localRepository.executeTransactionAsync {
val bgTask = it.where(Task::class.java).equalTo("id", taskID).findFirst() ?: return@executeTransactionAsync
val bgUser = it.where(User::class.java).equalTo("id", userID).findFirst() ?: return@executeTransactionAsync
this.localRepository.executeTransaction {
val bgTask = it.where(Task::class.java).equalTo("id", taskID).findFirst() ?: return@executeTransaction
val bgUser = it.where(User::class.java).equalTo("id", userID).findFirst() ?: return@executeTransaction
if (bgTask.type != "reward" && (bgTask.value - localDelta) + res.delta != bgTask.value) {
bgTask.value = (bgTask.value - localDelta) + res.delta
if (Task.TYPE_DAILY == bgTask.type || Task.TYPE_TODO == bgTask.type) {

View file

@ -12,7 +12,7 @@ import io.realm.Realm
open class RealmContentLocalRepository(realm: Realm) : RealmBaseLocalRepository(realm), ContentLocalRepository {
override fun saveContent(contentResult: ContentResult) {
realm.executeTransactionAsync { realm1 ->
executeTransactionAsync { realm1 ->
contentResult.potion?.let { realm1.insertOrUpdate(it) }
contentResult.armoire?.let { realm1.insertOrUpdate(it) }
contentResult.gear?.flat?.let { realm1.insertOrUpdate(it) }

View file

@ -53,12 +53,12 @@ class RealmTaskLocalRepository(realm: Realm) : RealmBaseLocalRepository(realm),
sortedTasks.forEach { it.reminders?.let { it1 -> allReminders.addAll(it1) } }
removeOldReminders(allReminders)
realm.executeTransactionAsync { realm1 -> realm1.insertOrUpdate(sortedTasks) }
executeTransaction { realm1 -> realm1.insertOrUpdate(sortedTasks) }
}
override fun saveCompletedTodos(userId: String, tasks: MutableCollection<Task>) {
removeCompletedTodos(userId, tasks)
realm.executeTransactionAsync { realm1 -> realm1.insertOrUpdate(tasks) }
executeTransaction { realm1 -> realm1.insertOrUpdate(tasks) }
}
private fun sortTasks(taskMap: MutableMap<String, Task>, taskOrder: List<String>): List<Task> {