Fix backup backwards compatibility

This commit is contained in:
Bnyro 2023-01-23 15:15:03 +01:00
parent cbbfa64f76
commit 93b235abea
2 changed files with 15 additions and 15 deletions

View File

@ -11,12 +11,12 @@ import kotlinx.serialization.Serializable
@Serializable
data class BackupFile(
var watchHistory: List<WatchHistoryItem> = emptyList(),
var watchPositions: List<WatchPosition> = emptyList(),
var searchHistory: List<SearchHistoryItem> = emptyList(),
var localSubscriptions: List<LocalSubscription> = emptyList(),
var customInstances: List<CustomInstance> = emptyList(),
var playlistBookmarks: List<PlaylistBookmark> = emptyList(),
var localPlaylists: List<LocalPlaylistWithVideos> = emptyList(),
var preferences: List<PreferenceItem> = emptyList()
var watchHistory: List<WatchHistoryItem>? = emptyList(),
var watchPositions: List<WatchPosition>? = emptyList(),
var searchHistory: List<SearchHistoryItem>? = emptyList(),
var localSubscriptions: List<LocalSubscription>? = emptyList(),
var customInstances: List<CustomInstance>? = emptyList(),
var playlistBookmarks: List<PlaylistBookmark>? = emptyList(),
var localPlaylists: List<LocalPlaylistWithVideos>? = emptyList(),
var preferences: List<PreferenceItem>? = emptyList()
)

View File

@ -50,25 +50,25 @@ class BackupHelper(private val context: Context) {
query {
Database.watchHistoryDao().insertAll(
*backupFile.watchHistory.toTypedArray()
*backupFile.watchHistory.orEmpty().toTypedArray()
)
Database.searchHistoryDao().insertAll(
*backupFile.searchHistory.toTypedArray()
*backupFile.searchHistory.orEmpty().toTypedArray()
)
Database.watchPositionDao().insertAll(
*backupFile.watchPositions.toTypedArray()
*backupFile.watchPositions.orEmpty().toTypedArray()
)
Database.localSubscriptionDao().insertAll(
*backupFile.localSubscriptions.toTypedArray()
*backupFile.localSubscriptions.orEmpty().toTypedArray()
)
Database.customInstanceDao().insertAll(
*backupFile.customInstances.toTypedArray()
*backupFile.customInstances.orEmpty().toTypedArray()
)
Database.playlistBookmarkDao().insertAll(
*backupFile.playlistBookmarks.toTypedArray()
*backupFile.playlistBookmarks.orEmpty().toTypedArray()
)
backupFile.localPlaylists.forEach {
backupFile.localPlaylists.orEmpty().forEach {
Database.localPlaylistsDao().createPlaylist(it.playlist)
val playlistId = Database.localPlaylistsDao().getAll().last().playlist.id
it.videos.forEach {