summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Sharvil Nanavati <sharvil@google.com> 2016-03-25 20:14:28 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2016-03-25 20:14:31 +0000
commita677ea72b159317ebb7456f60703babacef61650 (patch)
treeef8afdb67622421b01c1b10049007621a9164b69
parent9f68357d5f71c263f2ff67736a0d2272cc840c32 (diff)
parentcd8bb276f2e1975b71a9bef8c4f89d918fd5e296 (diff)
Merge "DO NOT MERGE ANYWHERE Add a NetworkTemplate matcher for ConnectivityManager#TYPE_PROXY." into cw-e-dev
-rw-r--r--core/java/android/net/NetworkTemplate.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/core/java/android/net/NetworkTemplate.java b/core/java/android/net/NetworkTemplate.java
index b7a411e4b646..c7339c13c6e9 100644
--- a/core/java/android/net/NetworkTemplate.java
+++ b/core/java/android/net/NetworkTemplate.java
@@ -18,6 +18,7 @@ package android.net;
import static android.net.ConnectivityManager.TYPE_BLUETOOTH;
import static android.net.ConnectivityManager.TYPE_ETHERNET;
+import static android.net.ConnectivityManager.TYPE_PROXY;
import static android.net.ConnectivityManager.TYPE_WIFI;
import static android.net.ConnectivityManager.TYPE_WIFI_P2P;
import static android.net.ConnectivityManager.TYPE_WIMAX;
@@ -58,6 +59,7 @@ public class NetworkTemplate implements Parcelable {
public static final int MATCH_MOBILE_WILDCARD = 6;
public static final int MATCH_WIFI_WILDCARD = 7;
public static final int MATCH_BLUETOOTH = 8;
+ public static final int MATCH_PROXY = 9;
/**
* Set of {@link NetworkInfo#getType()} that reflect data usage.
@@ -147,6 +149,14 @@ public class NetworkTemplate implements Parcelable {
return new NetworkTemplate(MATCH_BLUETOOTH, null, null);
}
+ /**
+ * Template to combine all {@link ConnectivityManager#TYPE_PROXY} style
+ * networks together.
+ */
+ public static NetworkTemplate buildTemplateProxy() {
+ return new NetworkTemplate(MATCH_PROXY, null, null);
+ }
+
private final int mMatchRule;
private final String mSubscriberId;
@@ -273,6 +283,8 @@ public class NetworkTemplate implements Parcelable {
return matchesWifiWildcard(ident);
case MATCH_BLUETOOTH:
return matchesBluetooth(ident);
+ case MATCH_PROXY:
+ return matchesProxy(ident);
default:
throw new IllegalArgumentException("unknown network template");
}
@@ -381,6 +393,13 @@ public class NetworkTemplate implements Parcelable {
return false;
}
+ /**
+ * Check if matches Proxy network template.
+ */
+ private boolean matchesProxy(NetworkIdentity ident) {
+ return ident.mType == TYPE_PROXY;
+ }
+
private static String getMatchRuleName(int matchRule) {
switch (matchRule) {
case MATCH_MOBILE_3G_LOWER:
@@ -399,6 +418,8 @@ public class NetworkTemplate implements Parcelable {
return "WIFI_WILDCARD";
case MATCH_BLUETOOTH:
return "BLUETOOTH";
+ case MATCH_PROXY:
+ return "PROXY";
default:
return "UNKNOWN";
}