Remove getNative* TurboModuleRegistry APIs

Summary:
These getNative* TurboModuleRegistry APIs make the TurboModuleManager harder to understand. They should have never been introduced.

Let's remove them for added clarity.

Changelog: [Android][Removed] - Remove TurboModuleManager.getNativeModule,getNativeModules,hasNativeModule

Reviewed By: mdvacca

Differential Revision: D45158032

fbshipit-source-id: 6f904dfe43fe7b2c215070a19f474acceddbf2f8
This commit is contained in:
Ramanpreet Nara
2023-04-21 16:37:04 -07:00
committed by Facebook GitHub Bot
parent 1f1918e473
commit ac2a4d8e6c
4 changed files with 21 additions and 75 deletions
@@ -457,7 +457,7 @@ public class CatalystInstanceImpl implements CatalystInstance {
@Override
public <T extends NativeModule> boolean hasNativeModule(Class<T> nativeModuleInterface) {
String moduleName = getNameFromAnnotation(nativeModuleInterface);
return getTurboModuleRegistry() != null && getTurboModuleRegistry().hasNativeModule(moduleName)
return getTurboModuleRegistry() != null && getTurboModuleRegistry().hasModule(moduleName)
? true
: mNativeModuleRegistry.hasModule(moduleName);
}
@@ -482,7 +482,7 @@ public class CatalystInstanceImpl implements CatalystInstance {
@Nullable
public NativeModule getNativeModule(String moduleName) {
if (getTurboModuleRegistry() != null) {
NativeModule module = getTurboModuleRegistry().getNativeModule(moduleName);
NativeModule module = getTurboModuleRegistry().getModule(moduleName);
if (module != null) {
return module;
}
@@ -509,7 +509,7 @@ public class CatalystInstanceImpl implements CatalystInstance {
nativeModules.addAll(mNativeModuleRegistry.getAllModules());
if (getTurboModuleRegistry() != null) {
for (NativeModule module : getTurboModuleRegistry().getNativeModules()) {
for (NativeModule module : getTurboModuleRegistry().getModules()) {
nativeModules.add(module);
}
}
@@ -198,7 +198,7 @@ public final class ReactInstance {
// Eagerly initialize TurboModules
for (String moduleName : mTurboModuleManager.getEagerInitModuleNames()) {
mTurboModuleManager.getNativeModule(moduleName);
mTurboModuleManager.getModule(moduleName);
}
Systrace.endSection(Systrace.TRACE_TAG_REACT_JAVA_BRIDGE);
@@ -290,14 +290,14 @@ public final class ReactInstance {
public <T extends NativeModule> boolean hasNativeModule(Class<T> nativeModuleInterface) {
ReactModule annotation = nativeModuleInterface.getAnnotation(ReactModule.class);
if (annotation != null) {
return mTurboModuleManager.hasNativeModule(annotation.name());
return mTurboModuleManager.hasModule(annotation.name());
}
return false;
}
public Collection<NativeModule> getNativeModules() {
Collection<NativeModule> nativeModules = new ArrayList<>();
for (NativeModule module : mTurboModuleManager.getNativeModules()) {
for (NativeModule module : mTurboModuleManager.getModules()) {
nativeModules.add(module);
}
return nativeModules;
@@ -313,7 +313,7 @@ public final class ReactInstance {
public @Nullable NativeModule getNativeModule(String nativeModuleName) {
synchronized (mTurboModuleManager) {
return mTurboModuleManager.getNativeModule(nativeModuleName);
return mTurboModuleManager.getModule(nativeModuleName);
}
}
@@ -131,7 +131,7 @@ public class TurboModuleManager implements JSIModule, TurboModuleRegistry {
@DoNotStrip
@Nullable
private NativeModule getLegacyJavaModule(String moduleName) {
final NativeModule module = getNativeModule(moduleName);
final NativeModule module = getModule(moduleName);
if (shouldRouteTurboModulesThroughInteropLayer()) {
return !(module instanceof CxxModuleWrapper) ? module : null;
@@ -146,7 +146,7 @@ public class TurboModuleManager implements JSIModule, TurboModuleRegistry {
@DoNotStrip
@Nullable
private CxxModuleWrapper getLegacyCxxModule(String moduleName) {
final NativeModule module = getNativeModule(moduleName);
final NativeModule module = getModule(moduleName);
if (shouldRouteTurboModulesThroughInteropLayer()) {
return module instanceof CxxModuleWrapper ? (CxxModuleWrapper) module : null;
@@ -165,7 +165,7 @@ public class TurboModuleManager implements JSIModule, TurboModuleRegistry {
return null;
}
final NativeModule module = getNativeModule(moduleName);
final NativeModule module = getModule(moduleName);
return module instanceof CxxModuleWrapper && module instanceof TurboModule
? (CxxModuleWrapper) module
: null;
@@ -178,18 +178,12 @@ public class TurboModuleManager implements JSIModule, TurboModuleRegistry {
return null;
}
final NativeModule module = getNativeModule(moduleName);
final NativeModule module = getModule(moduleName);
return !(module instanceof CxxModuleWrapper) && module instanceof TurboModule
? (TurboModule) module
: null;
}
@Deprecated
public TurboModule getModule(String moduleName) {
NativeModule module = getNativeModule(moduleName);
return module instanceof TurboModule ? (TurboModule) module : null;
}
/**
* Return the NativeModule instance that corresponds to the provided moduleName.
*
@@ -197,7 +191,7 @@ public class TurboModuleManager implements JSIModule, TurboModuleRegistry {
* null after TurboModuleManager has been torn down.
*/
@Nullable
public NativeModule getNativeModule(String moduleName) {
public NativeModule getModule(String moduleName) {
ModuleHolder moduleHolder;
synchronized (mModuleCleanupLock) {
@@ -220,7 +214,7 @@ public class TurboModuleManager implements JSIModule, TurboModuleRegistry {
}
TurboModulePerfLogger.moduleCreateStart(moduleName, moduleHolder.getModuleId());
NativeModule module = getOrCreateNativeModule(moduleName, moduleHolder, true);
NativeModule module = getOrCreateModule(moduleName, moduleHolder, true);
if (module != null) {
TurboModulePerfLogger.moduleCreateEnd(moduleName, moduleHolder.getModuleId());
@@ -238,7 +232,7 @@ public class TurboModuleManager implements JSIModule, TurboModuleRegistry {
* first thread creates x. All n - 1 other threads wait until the x is created and initialized.
*/
@Nullable
private NativeModule getOrCreateNativeModule(
private NativeModule getOrCreateModule(
String moduleName, @NonNull ModuleHolder moduleHolder, boolean shouldPerfLog) {
boolean shouldCreateModule = false;
@@ -315,21 +309,8 @@ public class TurboModuleManager implements JSIModule, TurboModuleRegistry {
}
}
@Deprecated
public Collection<TurboModule> getModules() {
final Collection<TurboModule> modules = new ArrayList<>();
for (final NativeModule module : getNativeModules()) {
if (module instanceof TurboModule) {
modules.add((TurboModule) module);
}
}
return modules;
}
/** Which NativeModules have been created? */
public Collection<NativeModule> getNativeModules() {
public Collection<NativeModule> getModules() {
final List<ModuleHolder> moduleHolders = new ArrayList<>();
synchronized (mModuleCleanupLock) {
moduleHolders.addAll(mModuleHolders.values());
@@ -348,30 +329,12 @@ public class TurboModuleManager implements JSIModule, TurboModuleRegistry {
return modules;
}
@Deprecated
public boolean hasModule(String moduleName) {
ModuleHolder moduleHolder;
synchronized (mModuleCleanupLock) {
moduleHolder = mModuleHolders.get(moduleName);
}
if (moduleHolder != null) {
synchronized (moduleHolder) {
if (moduleHolder.getModule() instanceof TurboModule) {
return true;
}
}
}
return false;
}
public boolean hasNativeModule(String moduleName) {
ModuleHolder moduleHolder;
synchronized (mModuleCleanupLock) {
moduleHolder = mModuleHolders.get(moduleName);
}
if (moduleHolder != null) {
synchronized (moduleHolder) {
if (moduleHolder.getModule() != null) {
@@ -418,7 +381,7 @@ public class TurboModuleManager implements JSIModule, TurboModuleRegistry {
* initialized. In this case, we should wait for initialization to complete, before destroying
* the TurboModule.
*/
final NativeModule nativeModule = getOrCreateNativeModule(moduleName, moduleHolder, false);
final NativeModule nativeModule = getOrCreateModule(moduleName, moduleHolder, false);
if (nativeModule != null) {
nativeModule.invalidate();
@@ -20,35 +20,18 @@ import java.util.List;
*/
public interface TurboModuleRegistry {
/**
* Return the TurboModule instance that has that name `moduleName`. If the `moduleName`
* Return the NativeModule instance that has that name `moduleName`. If the `moduleName`
* TurboModule hasn't been instantiated, instantiate it. If no TurboModule is registered under
* `moduleName`, return null.
*/
@Deprecated
@Nullable
TurboModule getModule(String moduleName);
NativeModule getModule(String moduleName);
/** Get all instantiated TurboModules. */
@Deprecated
Collection<TurboModule> getModules();
/** Has the TurboModule with name `moduleName` been instantiated? */
@Deprecated
boolean hasModule(String moduleName);
/**
* Return the NativeModule instance that has that name `moduleName`. If the `moduleName`
* NativeModule hasn't been instantiated, instantiate it. If no NativeModule is registered under
* `moduleName`, return null.
*/
@Nullable
NativeModule getNativeModule(String moduleName);
/** Get all instantiated NativeModule. */
Collection<NativeModule> getNativeModules();
/** Get all instantiated NativeModules. */
Collection<NativeModule> getModules();
/** Has the NativeModule with name `moduleName` been instantiated? */
boolean hasNativeModule(String moduleName);
boolean hasModule(String moduleName);
/**
* Return the names of all the NativeModules that are supposed to be eagerly initialized. By