Switch to using ViewManagerResolver for view managers

Summary:
Right now the FbReactInstanceDelegate provides a list of view managers to the instance during initialization, this means that we're basically eagerly loading all of the view manager classes.

In this change we use ViewManagerResolver instead.

Changelog:
[Android][Changed] - Move ViewManagerResolver into a seperate file

Reviewed By: mdvacca

Differential Revision: D26424214

fbshipit-source-id: 550ade31c256a56d6e32c463f112ea16dd55a218
This commit is contained in:
Lulu Wu
2021-02-16 10:09:53 -08:00
committed by Facebook GitHub Bot
parent 099f67cf8a
commit eaedb10755
7 changed files with 34 additions and 23 deletions
@@ -89,21 +89,6 @@ public class UIManagerModule extends ReactContextBaseJavaModule
implements OnBatchCompleteListener, LifecycleEventListener, UIManager {
public static final String TAG = UIManagerModule.class.getSimpleName();
/** Enables lazy discovery of a specific {@link ViewManager} by its name. */
public interface ViewManagerResolver {
/**
* {@class UIManagerModule} class uses this method to get a ViewManager by its name. This is the
* same name that comes from JS by {@code UIManager.ViewManagerName} call.
*/
@Nullable
ViewManager getViewManager(String viewManagerName);
/**
* Provides a list of view manager names to register in JS as {@code UIManager.ViewManagerName}
*/
List<String> getViewManagerNames();
}
/** Resolves a name coming from native side to a name of the event that is exposed to JS. */
public interface CustomEventNamesResolver {
/** Returns custom event name by the provided event name. */