Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: src/org/adblockplus/android/Utils.java

Issue 4705284891082752: Proxy configurators (Closed)
Patch Set: valueOf Created Aug. 19, 2014, 1:24 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/org/adblockplus/android/Utils.java
diff --git a/src/org/adblockplus/android/Utils.java b/src/org/adblockplus/android/Utils.java
index 2a79ffdb476bac3e6482bee0715deab3cdcf8758..63a6fdb31683bf62a64ea793ae449687998db980 100644
--- a/src/org/adblockplus/android/Utils.java
+++ b/src/org/adblockplus/android/Utils.java
@@ -17,6 +17,9 @@
package org.adblockplus.android;
+import java.util.concurrent.locks.ReentrantLock;
+
+import org.adblockplus.android.configurators.NativeProxyConfigurator;
import org.adblockplus.android.updater.UpdaterActivity;
import org.adblockplus.libadblockplus.JsValue;
import org.adblockplus.libadblockplus.Subscription;
@@ -30,11 +33,34 @@ import android.support.v4.app.NotificationCompat;
public final class Utils
{
+ private static final ReentrantLock LOCK = new ReentrantLock();
+ private static boolean nativeProxySupportChecked = false;
+ private static boolean nativeProxySupported = false;
+
private Utils()
{
//
}
+ public static boolean isNativeProxySupported(final Context context)
+ {
+ LOCK.lock();
Felix Dahlke 2014/08/19 16:14:46 Wouldn't a synchronize method have the same effect
René Jeschke 2014/08/19 16:33:24 Yeah, right, somehow I used a lock before, that me
+ try
+ {
+ if (!nativeProxySupportChecked)
+ {
+ nativeProxySupported = NativeProxyConfigurator.canUse(context);
+ nativeProxySupportChecked = true;
+ }
+
+ return nativeProxySupported;
+ }
+ finally
+ {
+ LOCK.unlock();
+ }
+ }
+
public static String getTag(final Class<?> clazz)
{
return clazz.getSimpleName();

Powered by Google App Engine
This is Rietveld