Replace consumer use with a lambda

This commit is contained in:
tzugen 2021-10-23 16:50:33 +02:00
parent c44257f569
commit fea515a526
No known key found for this signature in database
GPG Key ID: 61E9C34BC10EC930
2 changed files with 21 additions and 22 deletions

View File

@ -63,26 +63,25 @@ class MediaPlayerLifecycleSupport : KoinComponent {
mediaPlayerController.onCreate() mediaPlayerController.onCreate()
if (autoPlay) mediaPlayerController.preload() if (autoPlay) mediaPlayerController.preload()
playbackStateSerializer.deserialize(object : Consumer<State?>() { playbackStateSerializer.deserialize {
override fun accept(state: State?) {
mediaPlayerController.restore(
state!!.songs,
state.currentPlayingIndex,
state.currentPlayingPosition,
autoPlay,
false
)
// Work-around: Serialize again, as the restore() method creates a mediaPlayerController.restore(
// serialization without current playing info. it!!.songs,
playbackStateSerializer.serialize( it.currentPlayingIndex,
downloader.playlist, it.currentPlayingPosition,
downloader.currentPlayingIndex, autoPlay,
mediaPlayerController.playerPosition false
) )
afterCreated?.run()
} // Work-around: Serialize again, as the restore() method creates a
}) // serialization without current playing info.
playbackStateSerializer.serialize(
downloader.playlist,
downloader.currentPlayingIndex,
mediaPlayerController.playerPosition
)
afterCreated?.run()
}
CacheCleaner().clean() CacheCleaner().clean()
created = true created = true

View File

@ -81,7 +81,7 @@ class PlaybackStateSerializer : KoinComponent {
mediaSessionHandler.updateMediaSessionQueue(state.songs) mediaSessionHandler.updateMediaSessionQueue(state.songs)
} }
fun deserialize(afterDeserialized: Consumer<State?>) { fun deserialize(afterDeserialized: (State?) -> Unit?) {
appScope.launch { appScope.launch {
try { try {
@ -94,7 +94,7 @@ class PlaybackStateSerializer : KoinComponent {
} }
} }
private fun deserializeNow(afterDeserialized: Consumer<State?>) { private fun deserializeNow(afterDeserialized: (State?) -> Unit?) {
val state = FileUtil.deserialize<State>( val state = FileUtil.deserialize<State>(
context, Constants.FILENAME_PLAYLIST_SER context, Constants.FILENAME_PLAYLIST_SER
@ -107,6 +107,6 @@ class PlaybackStateSerializer : KoinComponent {
) )
mediaSessionHandler.updateMediaSessionQueue(state.songs) mediaSessionHandler.updateMediaSessionQueue(state.songs)
afterDeserialized.accept(state) afterDeserialized(state)
} }
} }