Refactor BridgeListener into JSIModulesProvider

Reviewed By: achen1

Differential Revision: D7140944

fbshipit-source-id: 092ea8569af5b5f90e005d6dc2c1819c1c9cf58f
This commit is contained in:
David Vacca
2018-03-05 11:03:44 -08:00
committed by Facebook Github Bot
parent 9f239d7914
commit 4466b6fa7c
11 changed files with 89 additions and 41 deletions
@@ -26,6 +26,7 @@ import com.facebook.systrace.TraceListener;
import java.lang.ref.WeakReference;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.atomic.AtomicInteger;
import javax.annotation.Nullable;
@@ -79,13 +80,13 @@ public class CatalystInstanceImpl implements CatalystInstance {
private final Object mJSCallsPendingInitLock = new Object();
private final NativeModuleRegistry mNativeModuleRegistry;
private final JSIModuleRegistry mJSIModuleRegistry = new JSIModuleRegistry();
private final NativeModuleCallExceptionHandler mNativeModuleCallExceptionHandler;
private final MessageQueueThread mNativeModulesQueueThread;
private boolean mInitialized = false;
private volatile boolean mAcceptCalls = false;
private boolean mJSBundleHasLoaded;
private UIManager mFabricUIManager;
private @Nullable String mSourceURL;
private JavaScriptContextHolder mJavaScriptContextHolder;
@@ -453,12 +454,14 @@ public class CatalystInstanceImpl implements CatalystInstance {
return mJavaScriptContextHolder;
}
public UIManager getFabricUIManager() {
return mFabricUIManager;
@Override
public void addJSIModules(List<JSIModuleHolder> jsiModules) {
mJSIModuleRegistry.registerModules(jsiModules);
}
public void setFabricUIManager(UIManager fabricUIManager) {
mFabricUIManager = fabricUIManager;
@Override
public <T extends JSIModule> T getJSIModule(Class<T> jsiModuleInterface) {
return mJSIModuleRegistry.getModule(jsiModuleInterface);
}
private native long getJavaScriptContext();