diff --git a/android/src/main/java/com/brentvatne/react/ReactVideoPackage.java b/android/src/main/java/com/brentvatne/react/ReactVideoPackage.java deleted file mode 100644 index 6f934858..00000000 --- a/android/src/main/java/com/brentvatne/react/ReactVideoPackage.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.brentvatne.react; - -import com.brentvatne.exoplayer.DefaultReactExoplayerConfig; -import com.brentvatne.exoplayer.ReactExoplayerConfig; -import com.brentvatne.exoplayer.ReactExoplayerViewManager; -import com.facebook.react.ReactPackage; -import com.facebook.react.bridge.JavaScriptModule; -import com.facebook.react.bridge.NativeModule; -import com.facebook.react.bridge.ReactApplicationContext; -import com.facebook.react.uimanager.ViewManager; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -public class ReactVideoPackage implements ReactPackage { - - private ReactExoplayerConfig config; - - public ReactVideoPackage() { - } - - public ReactVideoPackage(ReactExoplayerConfig config) { - this.config = config; - } - - @Override - public List createNativeModules(ReactApplicationContext reactContext) { - List modules = new ArrayList(); - - modules.add(new VideoDecoderPropertiesModule(reactContext)); - modules.add(new VideoManagerModule(reactContext)); - - return modules; - } - - // Deprecated RN 0.47 - public List> createJSModules() { - return Collections.emptyList(); - } - - - @Override - public List createViewManagers(ReactApplicationContext reactContext) { - if (config == null) { - config = new DefaultReactExoplayerConfig(reactContext); - } - return Collections.singletonList(new ReactExoplayerViewManager(config)); - } -} diff --git a/android/src/main/java/com/brentvatne/react/ReactVideoPackage.kt b/android/src/main/java/com/brentvatne/react/ReactVideoPackage.kt new file mode 100644 index 00000000..99aed985 --- /dev/null +++ b/android/src/main/java/com/brentvatne/react/ReactVideoPackage.kt @@ -0,0 +1,29 @@ +package com.brentvatne.react + +import com.brentvatne.exoplayer.DefaultReactExoplayerConfig +import com.brentvatne.exoplayer.ReactExoplayerConfig +import com.brentvatne.exoplayer.ReactExoplayerViewManager +import com.facebook.react.ReactPackage +import com.facebook.react.bridge.JavaScriptModule +import com.facebook.react.bridge.NativeModule +import com.facebook.react.bridge.ReactApplicationContext +import com.facebook.react.uimanager.ViewManager + +class ReactVideoPackage @JvmOverloads constructor(private var config: ReactExoplayerConfig? = null) : ReactPackage { + + override fun createNativeModules(reactContext: ReactApplicationContext): List = + listOf( + VideoDecoderPropertiesModule(reactContext), + VideoManagerModule(reactContext) + ) + + // Deprecated RN 0.47 + fun createJSModules(): List> = emptyList() + + override fun createViewManagers(reactContext: ReactApplicationContext): List> { + if (config == null) { + config = DefaultReactExoplayerConfig(reactContext) + } + return listOf(ReactExoplayerViewManager(config!!)) + } +}