diff --git a/ReactAndroid/src/main/java/com/facebook/react/CompositeReactPackage.java b/ReactAndroid/src/main/java/com/facebook/react/CompositeReactPackage.java
index 7aff02cfc..a824abcfb 100644
--- a/ReactAndroid/src/main/java/com/facebook/react/CompositeReactPackage.java
+++ b/ReactAndroid/src/main/java/com/facebook/react/CompositeReactPackage.java
@@ -1,10 +1,9 @@
/**
* Copyright (c) 2015-present, Facebook, Inc.
*
- * This source code is licensed under the MIT license found in the
- * LICENSE file in the root directory of this source tree.
+ *
This source code is licensed under the MIT license found in the LICENSE file in the root
+ * directory of this source tree.
*/
-
package com.facebook.react;
import com.facebook.react.bridge.NativeModule;
@@ -24,16 +23,15 @@ import javax.annotation.Nullable;
* {@code CompositeReactPackage} allows to create a single package composed of views and modules
* from several other packages.
*/
-public class CompositeReactPackage extends ReactInstancePackage
- implements ViewManagerOnDemandReactPackage {
+public class CompositeReactPackage implements ViewManagerOnDemandReactPackage, ReactPackage {
private final List mChildReactPackages = new ArrayList<>();
/**
- * The order in which packages are passed matters. It may happen that a NativeModule or
- * or a ViewManager exists in two or more ReactPackages. In that case the latter will win
- * i.e. the latter will overwrite the former. This re-occurrence is detected by
- * comparing a name of a module.
+ * The order in which packages are passed matters. It may happen that a NativeModule or or a
+ * ViewManager exists in two or more ReactPackages. In that case the latter will win i.e. the
+ * latter will overwrite the former. This re-occurrence is detected by comparing a name of a
+ * module.
*/
public CompositeReactPackage(ReactPackage arg1, ReactPackage arg2, ReactPackage... args) {
mChildReactPackages.add(arg1);
@@ -42,54 +40,25 @@ public class CompositeReactPackage extends ReactInstancePackage
Collections.addAll(mChildReactPackages, args);
}
- /**
- * {@inheritDoc}
- */
+ /** {@inheritDoc} */
@Override
public List createNativeModules(ReactApplicationContext reactContext) {
// This is for backward compatibility.
final Map moduleMap = new HashMap<>();
- for (ReactPackage reactPackage: mChildReactPackages) {
- for (NativeModule nativeModule: reactPackage.createNativeModules(reactContext)) {
+ for (ReactPackage reactPackage : mChildReactPackages) {
+ for (NativeModule nativeModule : reactPackage.createNativeModules(reactContext)) {
moduleMap.put(nativeModule.getName(), nativeModule);
}
}
return new ArrayList<>(moduleMap.values());
}
- /**
- * {@inheritDoc}
- */
- @Override
- public List createNativeModules(
- ReactApplicationContext reactContext,
- ReactInstanceManager reactInstanceManager) {
- final Map moduleMap = new HashMap<>();
- for (ReactPackage reactPackage: mChildReactPackages) {
- List nativeModules;
- if (reactPackage instanceof ReactInstancePackage) {
- ReactInstancePackage reactInstancePackage = (ReactInstancePackage) reactPackage;
- nativeModules = reactInstancePackage.createNativeModules(
- reactContext,
- reactInstanceManager);
- } else {
- nativeModules = reactPackage.createNativeModules(reactContext);
- }
- for (NativeModule nativeModule: nativeModules) {
- moduleMap.put(nativeModule.getName(), nativeModule);
- }
- }
- return new ArrayList<>(moduleMap.values());
- }
-
- /**
- * {@inheritDoc}
- */
+ /** {@inheritDoc} */
@Override
public List createViewManagers(ReactApplicationContext reactContext) {
final Map viewManagerMap = new HashMap<>();
- for (ReactPackage reactPackage: mChildReactPackages) {
- for (ViewManager viewManager: reactPackage.createViewManagers(reactContext)) {
+ for (ReactPackage reactPackage : mChildReactPackages) {
+ for (ViewManager viewManager : reactPackage.createViewManagers(reactContext)) {
viewManagerMap.put(viewManager.getName(), viewManager);
}
}
@@ -103,8 +72,7 @@ public class CompositeReactPackage extends ReactInstancePackage
for (ReactPackage reactPackage : mChildReactPackages) {
if (reactPackage instanceof ViewManagerOnDemandReactPackage) {
List names =
- ((ViewManagerOnDemandReactPackage) reactPackage)
- .getViewManagerNames(reactContext);
+ ((ViewManagerOnDemandReactPackage) reactPackage).getViewManagerNames(reactContext);
if (names != null) {
uniqueNames.addAll(names);
}
@@ -115,8 +83,10 @@ public class CompositeReactPackage extends ReactInstancePackage
/** {@inheritDoc} */
@Override
- public @Nullable ViewManager createViewManager(ReactApplicationContext reactContext, String viewManagerName) {
- ListIterator iterator = mChildReactPackages.listIterator(mChildReactPackages.size());
+ public @Nullable ViewManager createViewManager(
+ ReactApplicationContext reactContext, String viewManagerName) {
+ ListIterator iterator =
+ mChildReactPackages.listIterator(mChildReactPackages.size());
while (iterator.hasPrevious()) {
ReactPackage reactPackage = iterator.previous();
if (reactPackage instanceof ViewManagerOnDemandReactPackage) {
diff --git a/ReactAndroid/src/main/java/com/facebook/react/ReactInstancePackage.java b/ReactAndroid/src/main/java/com/facebook/react/ReactInstancePackage.java
index 03e872ae7..98df50ba8 100644
--- a/ReactAndroid/src/main/java/com/facebook/react/ReactInstancePackage.java
+++ b/ReactAndroid/src/main/java/com/facebook/react/ReactInstancePackage.java
@@ -18,7 +18,9 @@ import com.facebook.react.bridge.ReactApplicationContext;
* the instance manager for more information, like {@link DevSupportManager}.
*
* TODO(t11394819): Consolidate this with LazyReactPackage
+ * Use {@link ReactPackage} or {@link LazyReactPackage} and inject reactInstanceManager as a part of when plugins are initialized.
*/
+@Deprecated
public abstract class ReactInstancePackage implements ReactPackage {
public abstract List createNativeModules(