From 0a71f48b1349ed09bcb6e76ba9ff8eb388518b15 Mon Sep 17 00:00:00 2001 From: Oleg Lokhvitsky Date: Fri, 3 Feb 2017 12:49:57 -0800 Subject: [PATCH] Fix NetworkingModule losing Cookies when multiple CatalystInstances exist and one is destroyed Differential Revision: D4451197 fbshipit-source-id: 905309f626a2295ecaa2451413e414eb827e10b0 --- .../facebook/react/modules/network/NetworkingModule.java | 7 +++---- .../react/modules/network/OkHttpClientProvider.java | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java b/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java index 03d709a0a38449..d5396c1840a098 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java @@ -88,7 +88,6 @@ public final class NetworkingModule extends ReactContextBaseJavaModule { client = clientBuilder.build(); } mClient = client; - OkHttpClientProvider.replaceOkHttpClient(client); mCookieHandler = new ForwardingCookieHandler(reactContext); mCookieJarContainer = (CookieJarContainer) mClient.cookieJar(); mShuttingDown = false; @@ -113,7 +112,7 @@ public final class NetworkingModule extends ReactContextBaseJavaModule { * @param context the ReactContext of the application */ public NetworkingModule(final ReactApplicationContext context) { - this(context, null, OkHttpClientProvider.getOkHttpClient(), null); + this(context, null, OkHttpClientProvider.createClient(), null); } /** @@ -124,7 +123,7 @@ public NetworkingModule(final ReactApplicationContext context) { public NetworkingModule( ReactApplicationContext context, List networkInterceptorCreators) { - this(context, null, OkHttpClientProvider.getOkHttpClient(), networkInterceptorCreators); + this(context, null, OkHttpClientProvider.createClient(), networkInterceptorCreators); } /** @@ -133,7 +132,7 @@ public NetworkingModule( * caller does not provide one explicitly */ public NetworkingModule(ReactApplicationContext context, String defaultUserAgent) { - this(context, defaultUserAgent, OkHttpClientProvider.getOkHttpClient(), null); + this(context, defaultUserAgent, OkHttpClientProvider.createClient(), null); } @Override diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientProvider.java b/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientProvider.java index 4306c618edbf72..5b82aa027a3fad 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientProvider.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpClientProvider.java @@ -45,7 +45,7 @@ public static void replaceOkHttpClient(OkHttpClient client) { sClient = client; } - private static OkHttpClient createClient() { + public static OkHttpClient createClient() { // No timeouts by default OkHttpClient.Builder client = new OkHttpClient.Builder() .connectTimeout(0, TimeUnit.MILLISECONDS)