From 54d8d10a6bb6267c0677d37e6b28c6428720536b Mon Sep 17 00:00:00 2001 From: Pieter De Baets Date: Tue, 18 Apr 2017 06:39:10 -0700 Subject: [PATCH] Construct ModuleHolder from ReactModuleInfo Reviewed By: AaaChiuuu Differential Revision: D4883331 fbshipit-source-id: c901051d0aa5993142104126bbec5d76bd605e0b --- .../react/NativeModuleRegistryBuilder.java | 8 +------- .../react/cxxbridge/ModuleHolder.java | 19 +++++++------------ .../react/cxxbridge/BaseJavaModuleTest.java | 14 +------------- 3 files changed, 9 insertions(+), 32 deletions(-) diff --git a/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.java b/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.java index c2f7b80456..bc8956c1e0 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.java +++ b/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.java @@ -69,13 +69,7 @@ public class NativeModuleRegistryBuilder { ReactMarker.logMarker(ReactMarkerConstants.CREATE_MODULE_END); moduleHolder = new ModuleHolder(module); } else { - moduleHolder = new ModuleHolder( - reactModuleInfo.name(), - reactModuleInfo.canOverrideExistingModule(), - reactModuleInfo.supportsWebWorkers(), - reactModuleInfo.needsEagerInit(), - reactModuleInfo.hasConstants(), - moduleSpec.getProvider()); + moduleHolder = new ModuleHolder(reactModuleInfo, moduleSpec.getProvider()); } String name = moduleHolder.getName(); diff --git a/ReactAndroid/src/main/java/com/facebook/react/cxxbridge/ModuleHolder.java b/ReactAndroid/src/main/java/com/facebook/react/cxxbridge/ModuleHolder.java index 314fae0313..ee9e0b3154 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/cxxbridge/ModuleHolder.java +++ b/ReactAndroid/src/main/java/com/facebook/react/cxxbridge/ModuleHolder.java @@ -9,6 +9,7 @@ import com.facebook.proguard.annotations.DoNotStrip; import com.facebook.react.bridge.NativeModule; import com.facebook.react.bridge.ReactMarker; import com.facebook.react.bridge.ReactMarkerConstants; +import com.facebook.react.module.model.ReactModuleInfo; import com.facebook.systrace.Systrace; import com.facebook.systrace.SystraceMessage; @@ -37,19 +38,13 @@ public class ModuleHolder { private @Nullable NativeModule mModule; private boolean mInitializeNeeded; - public ModuleHolder( - String name, - boolean canOverrideExistingModule, - boolean supportsWebWorkers, - boolean needsEagerInit, - boolean hasConstants, - Provider provider) { - mName = name; - mCanOverrideExistingModule = canOverrideExistingModule; - mSupportsWebWorkers = supportsWebWorkers; - mHasConstants = hasConstants; + public ModuleHolder(ReactModuleInfo moduleInfo, Provider provider) { + mName = moduleInfo.name(); + mCanOverrideExistingModule = moduleInfo.canOverrideExistingModule(); + mSupportsWebWorkers = moduleInfo.supportsWebWorkers(); + mHasConstants = moduleInfo.hasConstants(); mProvider = provider; - if (needsEagerInit) { + if (moduleInfo.needsEagerInit()) { mModule = create(); } } diff --git a/ReactAndroid/src/test/java/com/facebook/react/cxxbridge/BaseJavaModuleTest.java b/ReactAndroid/src/test/java/com/facebook/react/cxxbridge/BaseJavaModuleTest.java index 63bd762bb8..384670fa61 100644 --- a/ReactAndroid/src/test/java/com/facebook/react/cxxbridge/BaseJavaModuleTest.java +++ b/ReactAndroid/src/test/java/com/facebook/react/cxxbridge/BaseJavaModuleTest.java @@ -48,19 +48,7 @@ public class BaseJavaModuleTest { @Before public void setup() { - ModuleHolder moduleHolder = new ModuleHolder("MethodsModule", - false, - false, - false, - false, - new Provider() { - MethodsModule mModule; - @Override - public MethodsModule get() { - mModule = new MethodsModule(); - return mModule; - } - }); + ModuleHolder moduleHolder = new ModuleHolder(new MethodsModule()); mWrapper = new JavaModuleWrapper(null, MethodsModule.class, moduleHolder); mMethods = mWrapper.getMethodDescriptors(); PowerMockito.mockStatic(SoLoader.class);