public class CatalystInstanceImpl extends java.lang.Object implements CatalystInstance
| Modifier and Type | Class and Description |
|---|---|
static class |
CatalystInstanceImpl.Builder |
static class |
CatalystInstanceImpl.PendingJSCall |
| Modifier and Type | Method and Description |
|---|---|
void |
addBridgeIdleDebugListener(NotThreadSafeBridgeIdleDebugListener listener)
Adds a idle listener for this Catalyst instance.
|
void |
addJSIModules(java.util.List<JSIModuleSpec> jsiModules) |
void |
callFunction(CatalystInstanceImpl.PendingJSCall function) |
void |
callFunction(java.lang.String module,
java.lang.String method,
NativeArray arguments) |
void |
destroy()
Destroys this catalyst instance, waiting for any other threads in ReactQueueConfiguration
(besides the UI thread) to finish running.
|
void |
extendNativeModules(NativeModuleRegistry modules)
This method and the native below permits a CatalystInstance to extend the known
Native modules.
|
JavaScriptContextHolder |
getJavaScriptContextHolder()
Get the C pointer (as a long) to the JavaScriptCore context associated with this instance.
|
<T extends JSIModule> |
getJSIModule(java.lang.Class<T> jsiModuleInterface) |
<T extends JavaScriptModule> |
getJSModule(java.lang.Class<T> jsInterface) |
<T extends NativeModule> |
getNativeModule(java.lang.Class<T> nativeModuleInterface) |
NativeModule |
getNativeModule(java.lang.String moduleName) |
java.util.Collection<NativeModule> |
getNativeModules() |
ReactQueueConfiguration |
getReactQueueConfiguration() |
java.lang.String |
getSourceURL()
Return the source URL of the JS Bundle that was run, or
null if no JS
bundle has been run yet. |
void |
handleMemoryPressure(int level)
Called when the system generates a memory warning.
|
<T extends NativeModule> |
hasNativeModule(java.lang.Class<T> nativeModuleInterface) |
boolean |
hasRunJSBundle() |
void |
initialize()
Initialize all the native modules
|
void |
invokeCallback(int callbackID,
NativeArrayInterface arguments) |
boolean |
isDestroyed() |
void |
registerSegment(int segmentId,
java.lang.String path)
This method registers the file path of an additional JS segment by its ID.
|
void |
removeBridgeIdleDebugListener(NotThreadSafeBridgeIdleDebugListener listener)
Removes a NotThreadSafeBridgeIdleDebugListener previously added with
addBridgeIdleDebugListener(com.facebook.react.bridge.NotThreadSafeBridgeIdleDebugListener) |
void |
runJSBundle() |
void |
setGlobalVariable(java.lang.String propName,
java.lang.String jsonValue) |
public void extendNativeModules(NativeModuleRegistry modules)
mNativeModuleRegistry updates internally to contain all the new modules, and generates
the new registry for extracting just the new collections.extendNativeModules in interface CatalystInstancepublic void registerSegment(int segmentId,
java.lang.String path)
CatalystInstanceregisterSegment in interface CatalystInstancepublic void runJSBundle()
runJSBundle in interface CatalystInstancepublic boolean hasRunJSBundle()
hasRunJSBundle in interface CatalystInstancepublic java.lang.String getSourceURL()
CatalystInstancenull if no JS
bundle has been run yet.getSourceURL in interface CatalystInstancepublic void callFunction(java.lang.String module,
java.lang.String method,
NativeArray arguments)
callFunction in interface CatalystInstancepublic void callFunction(CatalystInstanceImpl.PendingJSCall function)
public void invokeCallback(int callbackID,
NativeArrayInterface arguments)
invokeCallback in interface CatalystInstanceinvokeCallback in interface JSInstancepublic void destroy()
destroy in interface CatalystInstancepublic boolean isDestroyed()
isDestroyed in interface CatalystInstancepublic void initialize()
initialize in interface CatalystInstancepublic ReactQueueConfiguration getReactQueueConfiguration()
getReactQueueConfiguration in interface CatalystInstancepublic <T extends JavaScriptModule> T getJSModule(java.lang.Class<T> jsInterface)
getJSModule in interface CatalystInstancepublic <T extends NativeModule> boolean hasNativeModule(java.lang.Class<T> nativeModuleInterface)
hasNativeModule in interface CatalystInstancepublic <T extends NativeModule> T getNativeModule(java.lang.Class<T> nativeModuleInterface)
getNativeModule in interface CatalystInstancepublic NativeModule getNativeModule(java.lang.String moduleName)
getNativeModule in interface CatalystInstancepublic java.util.Collection<NativeModule> getNativeModules()
getNativeModules in interface CatalystInstancepublic void handleMemoryPressure(int level)
MemoryPressureListenerhandleMemoryPressure in interface MemoryPressureListenerpublic void addBridgeIdleDebugListener(NotThreadSafeBridgeIdleDebugListener listener)
addBridgeIdleDebugListener in interface CatalystInstancepublic void removeBridgeIdleDebugListener(NotThreadSafeBridgeIdleDebugListener listener)
addBridgeIdleDebugListener(com.facebook.react.bridge.NotThreadSafeBridgeIdleDebugListener)removeBridgeIdleDebugListener in interface CatalystInstancepublic void setGlobalVariable(java.lang.String propName,
java.lang.String jsonValue)
setGlobalVariable in interface CatalystInstancepublic JavaScriptContextHolder getJavaScriptContextHolder()
CatalystInstanceUse the following pattern to ensure that the JS context is not cleared while you are using it: JavaScriptContextHolder jsContext = reactContext.getJavaScriptContextHolder() synchronized(jsContext) { nativeThingNeedingJsContext(jsContext.get()); }
getJavaScriptContextHolder in interface CatalystInstancepublic void addJSIModules(java.util.List<JSIModuleSpec> jsiModules)
addJSIModules in interface CatalystInstancepublic <T extends JSIModule> T getJSIModule(java.lang.Class<T> jsiModuleInterface)
getJSIModule in interface CatalystInstance