code-style fix, fix db code structure
This commit is contained in:
@@ -19,7 +19,7 @@ class ScheduleRepositoryImpl @Inject constructor(
|
||||
override suspend fun loadScheduleByGroup(number: String): NetworkResult<ScheduleEntity> {
|
||||
val result = remote.loadScheduleByGroup(number).map(mapper::invoke)
|
||||
if (result is NetworkResult.Success) {
|
||||
local.save(ScheduleCacheKey.group(number), result.data)
|
||||
local.saveSchedule(ScheduleCacheKey.group(number), result.data)
|
||||
}
|
||||
return result
|
||||
}
|
||||
@@ -27,7 +27,7 @@ class ScheduleRepositoryImpl @Inject constructor(
|
||||
override suspend fun loadScheduleByTeacher(name: String): NetworkResult<ScheduleEntity> {
|
||||
val result = remote.loadScheduleByTeacher(name).map(mapper::invoke)
|
||||
if (result is NetworkResult.Success) {
|
||||
local.save(ScheduleCacheKey.teacher(name), result.data)
|
||||
local.saveSchedule(ScheduleCacheKey.teacher(name), result.data)
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ package ru.fincode.tsudesk.feature.schedule.data.datasource
|
||||
import ru.fincode.tsudesk.feature.schedule.domain.model.ScheduleEntity
|
||||
|
||||
interface ScheduleLocalDataSource {
|
||||
suspend fun save(key: String, schedule: ScheduleEntity)
|
||||
suspend fun load(key: String): ScheduleEntity?
|
||||
suspend fun clear(key: String)
|
||||
suspend fun saveSchedule(key: String, schedule: ScheduleEntity)
|
||||
suspend fun loadSchedule(key: String): ScheduleEntity?
|
||||
suspend fun removeSchedule(key: String)
|
||||
}
|
||||
|
||||
@@ -11,18 +11,18 @@ class ScheduleLocalDataSourceImpl @Inject constructor(
|
||||
private val dao: ScheduleDao
|
||||
) : ScheduleLocalDataSource {
|
||||
|
||||
override suspend fun save(key: String, schedule: ScheduleEntity) {
|
||||
override suspend fun saveSchedule(key: String, schedule: ScheduleEntity) {
|
||||
val (scheduleCache, lessonsCache) = schedule.toCache(key)
|
||||
dao.replaceSchedule(key, scheduleCache, lessonsCache)
|
||||
}
|
||||
|
||||
override suspend fun load(key: String): ScheduleEntity? {
|
||||
override suspend fun loadSchedule(key: String): ScheduleEntity? {
|
||||
val schedule = dao.getSchedule(key) ?: return null
|
||||
val lessons = dao.getLessons(key)
|
||||
return schedule.toDomain(lessons)
|
||||
}
|
||||
|
||||
override suspend fun clear(key: String) {
|
||||
override suspend fun removeSchedule(key: String) {
|
||||
dao.deleteLessonsByKey(key)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,13 +2,17 @@ package ru.fincode.tsudesk.feature.schedule.data.mapper
|
||||
|
||||
import ru.fincode.tsudesk.core.database.schedule.LessonCacheEntity
|
||||
import ru.fincode.tsudesk.core.database.schedule.ScheduleCacheEntity
|
||||
import ru.fincode.tsudesk.core.database.schedule.ScheduleDbConstants.GROUP_PRE_KEY
|
||||
import ru.fincode.tsudesk.core.database.schedule.ScheduleDbConstants.TEACHER_PRE_KEY
|
||||
import ru.fincode.tsudesk.feature.schedule.domain.model.LessonEntity
|
||||
import ru.fincode.tsudesk.feature.schedule.domain.model.ScheduleEntity
|
||||
|
||||
|
||||
|
||||
|
||||
object ScheduleCacheKey {
|
||||
fun group(number: String) = "group:$number"
|
||||
fun teacher(name: String) = "teacher:$name"
|
||||
fun group(number: String) = "$GROUP_PRE_KEY$number"
|
||||
fun teacher(name: String) = "$TEACHER_PRE_KEY$name"
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user