From 3d99269c414afe18a904076405852b055b9a5f1d Mon Sep 17 00:00:00 2001 From: tzugen Date: Fri, 21 May 2021 23:08:28 +0200 Subject: [PATCH] Remove context from ShufflePlayBuffer --- .../ultrasonic/util/ShufflePlayBuffer.java | 18 ++++-------------- .../moire/ultrasonic/di/MediaPlayerModule.kt | 2 +- .../ultrasonic/service/LocalMediaPlayer.kt | 2 ++ 3 files changed, 7 insertions(+), 15 deletions(-) diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/util/ShufflePlayBuffer.java b/ultrasonic/src/main/java/org/moire/ultrasonic/util/ShufflePlayBuffer.java index 203e6d98..d918a4e0 100644 --- a/ultrasonic/src/main/java/org/moire/ultrasonic/util/ShufflePlayBuffer.java +++ b/ultrasonic/src/main/java/org/moire/ultrasonic/util/ShufflePlayBuffer.java @@ -18,9 +18,6 @@ */ package org.moire.ultrasonic.util; -import android.content.Context; -import timber.log.Timber; - import org.moire.ultrasonic.data.ActiveServerProvider; import org.moire.ultrasonic.domain.MusicDirectory; import org.moire.ultrasonic.service.MusicService; @@ -32,6 +29,8 @@ import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; +import timber.log.Timber; + /** * @author Sindre Mehus * @version $Id$ @@ -42,28 +41,19 @@ public class ShufflePlayBuffer private static final int REFILL_THRESHOLD = 40; private final List buffer = new ArrayList<>(); - private final Context context; private ScheduledExecutorService executorService; private int currentServer; public boolean isEnabled = false; - public ShufflePlayBuffer(Context context) + public ShufflePlayBuffer() { - this.context = context; } public void onCreate() { executorService = Executors.newSingleThreadScheduledExecutor(); - Runnable runnable = new Runnable() - { - @Override - public void run() - { - refill(); - } - }; + Runnable runnable = this::refill; executorService.scheduleWithFixedDelay(runnable, 1, 10, TimeUnit.SECONDS); Timber.i("ShufflePlayBuffer created"); } diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/di/MediaPlayerModule.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/di/MediaPlayerModule.kt index bd887e48..6f7a751d 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/di/MediaPlayerModule.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/di/MediaPlayerModule.kt @@ -20,7 +20,7 @@ val mediaPlayerModule = module { single { MediaPlayerLifecycleSupport(get(), get(), get()) } single { DownloadQueueSerializer(androidContext()) } single { ExternalStorageMonitor() } - single { ShufflePlayBuffer(androidContext()) } + single { ShufflePlayBuffer() } single { Downloader(get(), get(), get()) } single { LocalMediaPlayer(get(), androidContext()) } single { AudioFocusHandler(get()) } diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/LocalMediaPlayer.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/LocalMediaPlayer.kt index 0b48f666..11f22a44 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/LocalMediaPlayer.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/LocalMediaPlayer.kt @@ -20,6 +20,7 @@ import android.os.Looper import android.os.PowerManager import android.os.PowerManager.PARTIAL_WAKE_LOCK import android.os.PowerManager.WakeLock +import org.koin.core.component.KoinApiExtension import java.io.File import java.net.URLEncoder import java.util.Locale @@ -39,6 +40,7 @@ import timber.log.Timber /** * Represents a Media Player which uses the mobile's resources for playback */ +@KoinApiExtension class LocalMediaPlayer( private val audioFocusHandler: AudioFocusHandler, private val context: Context