From 9ca68efeb4ad97a261380082d1910403d2f78eb8 Mon Sep 17 00:00:00 2001 From: David Vacca Date: Thu, 4 May 2023 16:36:39 -0700 Subject: [PATCH] Migrating ReactInstanceDelegate to kotlin (#37259) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/37259 I'm migrating the ReactInstanceDelegate interface to kotlin to start developping new api in kotlin bypass-github-export-checks changelog: [internal] internal Reviewed By: cortinico, philIip Differential Revision: D45507000 fbshipit-source-id: 893a04951c3d92a55f82c47617f4e7633737067b --- .../bridgeless/ReactInstanceDelegate.java | 37 ------------------- .../react/bridgeless/ReactInstanceDelegate.kt | 36 ++++++++++++++++++ 2 files changed, 36 insertions(+), 37 deletions(-) delete mode 100644 packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridgeless/ReactInstanceDelegate.java create mode 100644 packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridgeless/ReactInstanceDelegate.kt diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridgeless/ReactInstanceDelegate.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridgeless/ReactInstanceDelegate.java deleted file mode 100644 index 2e6a5952922..00000000000 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridgeless/ReactInstanceDelegate.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Meta Platforms, Inc. and affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -package com.facebook.react.bridgeless; - -import android.content.Context; -import com.facebook.infer.annotation.ThreadSafe; -import com.facebook.react.ReactPackage; -import com.facebook.react.bridge.JSBundleLoader; -import com.facebook.react.bridge.ReactApplicationContext; -import com.facebook.react.fabric.ReactNativeConfig; -import com.facebook.react.turbomodule.core.TurboModuleManager; -import com.facebook.react.turbomodule.core.TurboModuleManagerDelegate; -import java.util.List; - -@ThreadSafe -public interface ReactInstanceDelegate { - String getJSMainModulePath(); - - JSBundleLoader getJSBundleLoader(Context context); - - BindingsInstaller getBindingsInstaller(); - - TurboModuleManagerDelegate getTurboModuleManagerDelegate(ReactApplicationContext context); - - JSEngineInstance getJSEngineInstance(ReactApplicationContext context); - - void handleInstanceException(Exception e); - - ReactNativeConfig getReactNativeConfig(TurboModuleManager turboModuleManager); - - List getReactPackages(); -} diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridgeless/ReactInstanceDelegate.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridgeless/ReactInstanceDelegate.kt new file mode 100644 index 00000000000..88b454b32ca --- /dev/null +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/bridgeless/ReactInstanceDelegate.kt @@ -0,0 +1,36 @@ +/* + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +package com.facebook.react.bridgeless + +import android.content.Context +import com.facebook.infer.annotation.ThreadSafe +import com.facebook.react.ReactPackage +import com.facebook.react.bridge.JSBundleLoader +import com.facebook.react.bridge.ReactApplicationContext +import com.facebook.react.fabric.ReactNativeConfig +import com.facebook.react.turbomodule.core.TurboModuleManager +import com.facebook.react.turbomodule.core.TurboModuleManagerDelegate + +@ThreadSafe +interface ReactInstanceDelegate { + val jSMainModulePath: String + + val bindingsInstaller: BindingsInstaller + + val reactPackages: List + + fun getJSBundleLoader(context: Context): JSBundleLoader + + fun getTurboModuleManagerDelegate(context: ReactApplicationContext): TurboModuleManagerDelegate + + fun getJSEngineInstance(context: ReactApplicationContext): JSEngineInstance + + fun handleInstanceException(e: Exception) + + fun getReactNativeConfig(turboModuleManager: TurboModuleManager): ReactNativeConfig +}