mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
Move TurboModuleManager creation into ReactInstanceManager
Summary: See title. Changelog: [Android][Changed] - Move TurboModuleManager creation into ReactInstanceManager Reviewed By: mdvacca Differential Revision: D26193053 fbshipit-source-id: fe92636f0cb3dca65fa919ac5df8931b693f76c5
This commit is contained in:
committed by
Facebook GitHub Bot
parent
eb7e89e286
commit
13f100f788
@@ -54,7 +54,6 @@ import com.facebook.react.bridge.Arguments;
|
||||
import com.facebook.react.bridge.CatalystInstance;
|
||||
import com.facebook.react.bridge.CatalystInstanceImpl;
|
||||
import com.facebook.react.bridge.JSBundleLoader;
|
||||
import com.facebook.react.bridge.JSIModule;
|
||||
import com.facebook.react.bridge.JSIModulePackage;
|
||||
import com.facebook.react.bridge.JSIModuleType;
|
||||
import com.facebook.react.bridge.JavaJSExecutor;
|
||||
@@ -93,6 +92,8 @@ import com.facebook.react.modules.debug.interfaces.DeveloperSettings;
|
||||
import com.facebook.react.modules.fabric.ReactFabric;
|
||||
import com.facebook.react.packagerconnection.RequestHandler;
|
||||
import com.facebook.react.surface.ReactStage;
|
||||
import com.facebook.react.turbomodule.core.TurboModuleManager;
|
||||
import com.facebook.react.turbomodule.core.TurboModuleManagerDelegate;
|
||||
import com.facebook.react.turbomodule.core.interfaces.TurboModuleRegistry;
|
||||
import com.facebook.react.uimanager.DisplayMetricsHolder;
|
||||
import com.facebook.react.uimanager.ReactRoot;
|
||||
@@ -1292,9 +1293,19 @@ public class ReactInstanceManager {
|
||||
mJSIModulePackage.getJSIModules(
|
||||
reactContext, catalystInstance.getJavaScriptContextHolder()));
|
||||
|
||||
if (ReactFeatureFlags.useTurboModules) {
|
||||
JSIModule turboModuleManager =
|
||||
catalystInstance.getJSIModule(JSIModuleType.TurboModuleManager);
|
||||
if (ReactFeatureFlags.useTurboModules && mTMMDelegateBuilder != null) {
|
||||
TurboModuleManagerDelegate tmmDelegate =
|
||||
mTMMDelegateBuilder
|
||||
.setPackages(mPackages)
|
||||
.setReactApplicationContext(reactContext)
|
||||
.build();
|
||||
|
||||
TurboModuleManager turboModuleManager =
|
||||
new TurboModuleManager(
|
||||
catalystInstance.getRuntimeExecutor(),
|
||||
tmmDelegate,
|
||||
catalystInstance.getJSCallInvokerHolder(),
|
||||
catalystInstance.getNativeCallInvokerHolder());
|
||||
|
||||
catalystInstance.setTurboModuleManager(turboModuleManager);
|
||||
|
||||
|
||||
+8
-38
@@ -15,8 +15,8 @@ import com.facebook.react.ReactApplication;
|
||||
import com.facebook.react.ReactInstanceManager;
|
||||
import com.facebook.react.ReactNativeHost;
|
||||
import com.facebook.react.ReactPackage;
|
||||
import com.facebook.react.ReactPackageTurboModuleManagerDelegate;
|
||||
import com.facebook.react.TurboReactPackage;
|
||||
import com.facebook.react.bridge.JSIModule;
|
||||
import com.facebook.react.bridge.JSIModulePackage;
|
||||
import com.facebook.react.bridge.JSIModuleProvider;
|
||||
import com.facebook.react.bridge.JSIModuleSpec;
|
||||
@@ -33,7 +33,6 @@ import com.facebook.react.fabric.ReactNativeConfig;
|
||||
import com.facebook.react.module.model.ReactModuleInfo;
|
||||
import com.facebook.react.module.model.ReactModuleInfoProvider;
|
||||
import com.facebook.react.shell.MainReactPackage;
|
||||
import com.facebook.react.turbomodule.core.TurboModuleManager;
|
||||
import com.facebook.react.uimanager.ViewManagerRegistry;
|
||||
import com.facebook.react.views.text.ReactFontManager;
|
||||
import com.facebook.soloader.SoLoader;
|
||||
@@ -108,6 +107,13 @@ public class RNTesterApplication extends Application implements ReactApplication
|
||||
});
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
protected ReactPackageTurboModuleManagerDelegate.Builder
|
||||
getReactPackageTurboModuleManagerDelegateBuilder() {
|
||||
return new RNTesterTurboModuleManagerDelegate.Builder();
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
protected JSIModulePackage getJSIModulePackage() {
|
||||
@@ -122,42 +128,6 @@ public class RNTesterApplication extends Application implements ReactApplication
|
||||
final JavaScriptContextHolder jsContext) {
|
||||
final List<JSIModuleSpec> specs = new ArrayList<>();
|
||||
|
||||
// Install the new native module system.
|
||||
if (ReactFeatureFlags.useTurboModules) {
|
||||
specs.add(
|
||||
new JSIModuleSpec() {
|
||||
@Override
|
||||
public JSIModuleType getJSIModuleType() {
|
||||
return JSIModuleType.TurboModuleManager;
|
||||
}
|
||||
|
||||
@Override
|
||||
public JSIModuleProvider getJSIModuleProvider() {
|
||||
return new JSIModuleProvider() {
|
||||
@Override
|
||||
public JSIModule get() {
|
||||
final ReactInstanceManager reactInstanceManager =
|
||||
getReactInstanceManager();
|
||||
final List<ReactPackage> packages = reactInstanceManager.getPackages();
|
||||
|
||||
return new TurboModuleManager(
|
||||
reactApplicationContext.getCatalystInstance().getRuntimeExecutor(),
|
||||
new RNTesterTurboModuleManagerDelegate.Builder()
|
||||
.setPackages(packages)
|
||||
.setReactApplicationContext(reactApplicationContext)
|
||||
.build(),
|
||||
reactApplicationContext
|
||||
.getCatalystInstance()
|
||||
.getJSCallInvokerHolder(),
|
||||
reactApplicationContext
|
||||
.getCatalystInstance()
|
||||
.getNativeCallInvokerHolder());
|
||||
}
|
||||
};
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// Install the new renderer.
|
||||
if (BuildConfig.ENABLE_FABRIC) {
|
||||
specs.add(
|
||||
|
||||
Reference in New Issue
Block a user