LibreTube/app/src/main/java/com/github/libretube/database/DatabaseHelper.kt

51 lines
1.5 KiB
Kotlin
Raw Normal View History

2022-08-13 23:34:07 +05:30
package com.github.libretube.database
import com.github.libretube.obj.Streams
import com.github.libretube.obj.WatchHistoryItem
2022-08-14 01:33:11 +05:30
import com.github.libretube.obj.WatchPosition
2022-08-13 23:34:07 +05:30
import com.github.libretube.util.toID
object DatabaseHelper {
fun addToWatchHistory(videoId: String, streams: Streams) {
val watchHistoryItem = WatchHistoryItem(
videoId,
streams.title,
streams.uploadDate,
streams.uploader,
streams.uploaderUrl.toID(),
streams.uploaderAvatar,
streams.thumbnailUrl,
streams.duration
)
2022-08-13 23:41:56 +05:30
Thread {
DatabaseHolder.database.watchHistoryDao().insertAll(watchHistoryItem)
}.start()
2022-08-13 23:34:07 +05:30
}
2022-08-14 01:33:11 +05:30
fun removeFromWatchHistory(index: Int) {
Thread {
DatabaseHolder.database.watchHistoryDao().delete(
DatabaseHolder.database.watchHistoryDao().getAll()[index]
)
}.start()
}
fun saveWatchPosition(videoId: String, position: Long) {
val watchPosition = WatchPosition(
videoId,
position
)
Thread {
DatabaseHolder.database.watchPositionDao().insertAll(watchPosition)
}.start()
}
fun removeWatchPosition(videoId: String) {
Thread {
DatabaseHolder.database.watchPositionDao().delete(
DatabaseHolder.database.watchPositionDao().findById(videoId)
)
}.start()
}
2022-08-13 23:34:07 +05:30
}