Newer
Older
ToDoApp / app / src / main / java / keijumt / todoapp / data / db / TaskRoomDatabase.kt
package keijumt.todoapp.data.db

import android.arch.persistence.room.RoomDatabase
import io.reactivex.Flowable
import keijumt.todoapp.data.db.dao.TaskDao
import keijumt.todoapp.data.db.entity.Task
import javax.inject.Inject

/**
 * Created by matsumoto_k on 2018/03/09.
 */
class TaskRoomDatabase @Inject constructor(
        val database: RoomDatabase,
        val taskDao: TaskDao
) : TaskDatabase {
    override fun getAll(): Flowable<List<Task>> {
        return taskDao.getAll()
    }

    override fun save(task: Task) {
        database.runInTransaction {
            taskDao.insert(task)
        }
    }

    override fun update(task: Task) {
        database.runInTransaction {
            taskDao.update(task)
        }
    }
}