summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Erik Kline <ek@google.com> 2017-01-23 07:13:56 +0000
committer android-build-merger <android-build-merger@google.com> 2017-01-23 07:13:56 +0000
commit72c17a72349fcd763f17aec75bb5c3e2558eb920 (patch)
treed1cfddd2bd198055ae51db5922d71553f1552105
parent2aec2f7a9c0c8240fab29a43bff16cfa73a627ae (diff)
parent1b2a1b911dde8c9092019663c39ed33a87ed2e4b (diff)
Merge "More concisely export whether we have a "tetherable configuration""
am: 1b2a1b911d Change-Id: I5f9717c9dab6b39f1fbf2186107b2a1f3f2d4f8f
-rw-r--r--services/core/java/com/android/server/ConnectivityService.java5
-rw-r--r--services/core/java/com/android/server/connectivity/Tethering.java24
2 files changed, 13 insertions, 16 deletions
diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java
index bdb964204c14..924e18858c53 100644
--- a/services/core/java/com/android/server/ConnectivityService.java
+++ b/services/core/java/com/android/server/ConnectivityService.java
@@ -3094,10 +3094,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
Settings.Global.TETHER_SUPPORTED, defaultVal) != 0)
&& !mUserManager.hasUserRestriction(UserManager.DISALLOW_CONFIG_TETHERING);
return tetherEnabledInSettings && mUserManager.isAdminUser() &&
- ((mTethering.getTetherableUsbRegexs().length != 0 ||
- mTethering.getTetherableWifiRegexs().length != 0 ||
- mTethering.getTetherableBluetoothRegexs().length != 0) &&
- mTethering.getUpstreamIfaceTypes().length != 0);
+ mTethering.hasTetherableConfiguration();
}
@Override
diff --git a/services/core/java/com/android/server/connectivity/Tethering.java b/services/core/java/com/android/server/connectivity/Tethering.java
index 93f35fee9e8d..ca002fcf4c10 100644
--- a/services/core/java/com/android/server/connectivity/Tethering.java
+++ b/services/core/java/com/android/server/connectivity/Tethering.java
@@ -204,7 +204,7 @@ public class Tethering extends BaseNetworkObserver implements IControlsTethering
return (ConnectivityManager) mContext.getSystemService(Context.CONNECTIVITY_SERVICE);
}
- void updateConfiguration() {
+ private void updateConfiguration() {
mConfig = new TetheringConfiguration(mContext);
}
@@ -816,6 +816,17 @@ public class Tethering extends BaseNetworkObserver implements IControlsTethering
return mConfig;
}
+ public boolean hasTetherableConfiguration() {
+ final TetheringConfiguration cfg = mConfig;
+ final boolean hasDownstreamConfiguration =
+ (cfg.tetherableUsbRegexs.length != 0) ||
+ (cfg.tetherableWifiRegexs.length != 0) ||
+ (cfg.tetherableBluetoothRegexs.length != 0);
+ final boolean hasUpstreamConfiguration = !cfg.preferredUpstreamIfaceTypes.isEmpty();
+
+ return hasDownstreamConfiguration && hasUpstreamConfiguration;
+ }
+
// TODO - update callers to use getTetheringConfiguration(),
// which has only final members.
public String[] getTetherableUsbRegexs() {
@@ -863,17 +874,6 @@ public class Tethering extends BaseNetworkObserver implements IControlsTethering
return ConnectivityManager.TETHER_ERROR_NO_ERROR;
}
- public int[] getUpstreamIfaceTypes() {
- updateConfiguration(); // TODO - remove?
- final Collection<Integer> upstreams = mConfig.preferredUpstreamIfaceTypes;
- final int[] values = new int[upstreams.size()];
- int i = 0;
- for (Integer u : upstreams) {
- values[i++] = u.intValue();
- }
- return values;
- }
-
// TODO review API - maybe return ArrayList<String> here and below?
public String[] getTetheredIfaces() {
ArrayList<String> list = new ArrayList<String>();