diff options
| author | 2016-07-19 11:42:00 +0000 | |
|---|---|---|
| committer | 2016-07-19 11:42:01 +0000 | |
| commit | c1b775584d412189d9cc00a8ca74a2d2dd36db2b (patch) | |
| tree | 63f2106dadc5d350315aca015f53553f860f2bbd | |
| parent | 16560f6eb9289a66f6b5e6039040e307275a4993 (diff) | |
| parent | 59375a015a8a0cfdb5a330242241ab3c8df3774a (diff) | |
Merge "Remove synchronized from static methods in WebView."
| -rw-r--r-- | api/current.txt | 6 | ||||
| -rw-r--r-- | api/system-current.txt | 6 | ||||
| -rw-r--r-- | api/test-current.txt | 6 | ||||
| -rw-r--r-- | core/java/android/webkit/CookieManager.java | 2 | ||||
| -rw-r--r-- | core/java/android/webkit/CookieSyncManager.java | 25 | ||||
| -rw-r--r-- | core/java/android/webkit/WebView.java | 2 |
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(); } |