Make ReactContext and ReactApplicationContext classes abstract (#43625)

Summary:
Pull Request resolved: https://github.com/facebook/react-native/pull/43625

Changelog: [Android][Breaking] Make ReactApplicationContext and ReactContext abstract. Please instantiate BridgeReactContext instead (bridge mode). Or BridgelessReactContext instead (bridgeless mode).

Reviewed By: arushikesarwani94

Differential Revision: D55218590

fbshipit-source-id: d507cc47c67cb5cd6c548844c08aa9ed8fb74796
This commit is contained in:
Ramanpreet Nara
2024-03-26 07:15:29 -07:00
committed by Facebook GitHub Bot
parent 8eb1bd1170
commit e69f6755c8
3 changed files with 4 additions and 4 deletions
@@ -1056,7 +1056,7 @@ public class com/facebook/react/bridge/ProxyJavaScriptExecutor$Factory : com/fac
public fun stopSamplingProfiler (Ljava/lang/String;)V
}
public class com/facebook/react/bridge/ReactApplicationContext : com/facebook/react/bridge/ReactContext {
public abstract class com/facebook/react/bridge/ReactApplicationContext : com/facebook/react/bridge/ReactContext {
public fun <init> (Landroid/content/Context;)V
}
@@ -1068,7 +1068,7 @@ public class com/facebook/react/bridge/ReactBridge {
public static fun staticInit ()V
}
public class com/facebook/react/bridge/ReactContext : android/content/ContextWrapper {
public abstract class com/facebook/react/bridge/ReactContext : android/content/ContextWrapper {
protected field mInteropModuleRegistry Lcom/facebook/react/bridge/interop/InteropModuleRegistry;
public fun <init> (Landroid/content/Context;)V
public fun addActivityEventListener (Lcom/facebook/react/bridge/ActivityEventListener;)V
@@ -13,7 +13,7 @@ import android.content.Context;
* A context wrapper that always wraps Android Application {@link Context} and {@link
* CatalystInstance} by extending {@link ReactContext}
*/
public class ReactApplicationContext extends ReactContext {
public abstract class ReactApplicationContext extends ReactContext {
// We want to wrap ApplicationContext, since there is no easy way to verify that application
// context is passed as a param, we use {@link Context#getApplicationContext} to ensure that
// the context we're wrapping is in fact an application context.
@@ -37,7 +37,7 @@ import java.util.concurrent.CopyOnWriteArraySet;
* Abstract ContextWrapper for Android application or activity {@link Context} and {@link
* CatalystInstance}
*/
public class ReactContext extends ContextWrapper {
public abstract class ReactContext extends ContextWrapper {
@DoNotStrip
public interface RCTDeviceEventEmitter extends JavaScriptModule {