summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author TreeHugger Robot <treehugger-gerrit@google.com> 2016-07-19 11:42:00 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2016-07-19 11:42:01 +0000
commitc1b775584d412189d9cc00a8ca74a2d2dd36db2b (patch)
tree63f2106dadc5d350315aca015f53553f860f2bbd
parent16560f6eb9289a66f6b5e6039040e307275a4993 (diff)
parent59375a015a8a0cfdb5a330242241ab3c8df3774a (diff)
Merge "Remove synchronized from static methods in WebView."
-rw-r--r--api/current.txt6
-rw-r--r--api/system-current.txt6
-rw-r--r--api/test-current.txt6
-rw-r--r--core/java/android/webkit/CookieManager.java2
-rw-r--r--core/java/android/webkit/CookieSyncManager.java25
-rw-r--r--core/java/android/webkit/WebView.java2
6 files changed, 26 insertions, 21 deletions
diff --git a/api/current.txt b/api/current.txt
index 35041d1d74d2..3919fb8eb2d2 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -45254,7 +45254,7 @@ package android.webkit {
method public static boolean allowFileSchemeCookies();
method public abstract void flush();
method public abstract java.lang.String getCookie(java.lang.String);
- method public static synchronized android.webkit.CookieManager getInstance();
+ method public static android.webkit.CookieManager getInstance();
method public abstract boolean hasCookies();
method public abstract deprecated void removeAllCookie();
method public abstract void removeAllCookies(android.webkit.ValueCallback<java.lang.Boolean>);
@@ -45269,8 +45269,8 @@ package android.webkit {
}
public final deprecated class CookieSyncManager extends android.webkit.WebSyncManager {
- method public static synchronized android.webkit.CookieSyncManager createInstance(android.content.Context);
- method public static synchronized android.webkit.CookieSyncManager getInstance();
+ method public static android.webkit.CookieSyncManager createInstance(android.content.Context);
+ method public static android.webkit.CookieSyncManager getInstance();
method protected deprecated void syncFromRamToFlash();
field protected static final java.lang.String LOGTAG = "websync";
field protected android.webkit.WebViewDatabase mDataBase;
diff --git a/api/system-current.txt b/api/system-current.txt
index 5c6c122a68a0..44ee2c9fdfb6 100644
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -48416,7 +48416,7 @@ package android.webkit {
method public abstract java.lang.String getCookie(java.lang.String);
method public abstract java.lang.String getCookie(java.lang.String, boolean);
method public synchronized java.lang.String getCookie(android.net.WebAddress);
- method public static synchronized android.webkit.CookieManager getInstance();
+ method public static android.webkit.CookieManager getInstance();
method public abstract boolean hasCookies();
method public abstract boolean hasCookies(boolean);
method public abstract deprecated void removeAllCookie();
@@ -48433,8 +48433,8 @@ package android.webkit {
}
public final deprecated class CookieSyncManager extends android.webkit.WebSyncManager {
- method public static synchronized android.webkit.CookieSyncManager createInstance(android.content.Context);
- method public static synchronized android.webkit.CookieSyncManager getInstance();
+ method public static android.webkit.CookieSyncManager createInstance(android.content.Context);
+ method public static android.webkit.CookieSyncManager getInstance();
method protected deprecated void syncFromRamToFlash();
field protected static final java.lang.String LOGTAG = "websync";
field protected android.webkit.WebViewDatabase mDataBase;
diff --git a/api/test-current.txt b/api/test-current.txt
index 4d55c29a6e00..9e3387f025b4 100644
--- a/api/test-current.txt
+++ b/api/test-current.txt
@@ -45334,7 +45334,7 @@ package android.webkit {
method public static boolean allowFileSchemeCookies();
method public abstract void flush();
method public abstract java.lang.String getCookie(java.lang.String);
- method public static synchronized android.webkit.CookieManager getInstance();
+ method public static android.webkit.CookieManager getInstance();
method public abstract boolean hasCookies();
method public abstract deprecated void removeAllCookie();
method public abstract void removeAllCookies(android.webkit.ValueCallback<java.lang.Boolean>);
@@ -45349,8 +45349,8 @@ package android.webkit {
}
public final deprecated class CookieSyncManager extends android.webkit.WebSyncManager {
- method public static synchronized android.webkit.CookieSyncManager createInstance(android.content.Context);
- method public static synchronized android.webkit.CookieSyncManager getInstance();
+ method public static android.webkit.CookieSyncManager createInstance(android.content.Context);
+ method public static android.webkit.CookieSyncManager getInstance();
method protected deprecated void syncFromRamToFlash();
field protected static final java.lang.String LOGTAG = "websync";
field protected android.webkit.WebViewDatabase mDataBase;
diff --git a/core/java/android/webkit/CookieManager.java b/core/java/android/webkit/CookieManager.java
index 3ec235b6e3cd..67289c28e7a1 100644
--- a/core/java/android/webkit/CookieManager.java
+++ b/core/java/android/webkit/CookieManager.java
@@ -35,7 +35,7 @@ public abstract class CookieManager {
*
* @return the singleton CookieManager instance
*/
- public static synchronized CookieManager getInstance() {
+ public static CookieManager getInstance() {
return WebViewFactory.getProvider().getCookieManager();
}
diff --git a/core/java/android/webkit/CookieSyncManager.java b/core/java/android/webkit/CookieSyncManager.java
index eda8d3605112..c974b328d70f 100644
--- a/core/java/android/webkit/CookieSyncManager.java
+++ b/core/java/android/webkit/CookieSyncManager.java
@@ -65,6 +65,7 @@ public final class CookieSyncManager extends WebSyncManager {
private static CookieSyncManager sRef;
private static boolean sGetInstanceAllowed = false;
+ private static final Object sLock = new Object();
private CookieSyncManager() {
super(null, null);
@@ -77,12 +78,14 @@ public final class CookieSyncManager extends WebSyncManager {
*
* @return CookieSyncManager
*/
- public static synchronized CookieSyncManager getInstance() {
- checkInstanceIsAllowed();
- if (sRef == null) {
- sRef = new CookieSyncManager();
+ public static CookieSyncManager getInstance() {
+ synchronized (sLock) {
+ checkInstanceIsAllowed();
+ if (sRef == null) {
+ sRef = new CookieSyncManager();
+ }
+ return sRef;
}
- return sRef;
}
/**
@@ -90,12 +93,14 @@ public final class CookieSyncManager extends WebSyncManager {
* @param context
* @return CookieSyncManager
*/
- public static synchronized CookieSyncManager createInstance(Context context) {
- if (context == null) {
- throw new IllegalArgumentException("Invalid context argument");
+ public static CookieSyncManager createInstance(Context context) {
+ synchronized (sLock) {
+ if (context == null) {
+ throw new IllegalArgumentException("Invalid context argument");
+ }
+ setGetInstanceIsAllowed();
+ return getInstance();
}
- setGetInstanceIsAllowed();
- return getInstance();
}
/**
diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java
index cbfe43a230f6..6f3fa3685b8d 100644
--- a/core/java/android/webkit/WebView.java
+++ b/core/java/android/webkit/WebView.java
@@ -2322,7 +2322,7 @@ public class WebView extends AbsoluteLayout
}
}
- private static synchronized WebViewFactoryProvider getFactory() {
+ private static WebViewFactoryProvider getFactory() {
return WebViewFactory.getProvider();
}