From 126502d50632e28c70bd538b3ee15a0be575c7f0 Mon Sep 17 00:00:00 2001 From: Erik Kline Date: Fri, 9 Mar 2018 14:18:02 +0900 Subject: [PATCH] Refactor isTetheringSupported() calls Tethering currently wants access to complex isTetheringSupported logic that is only available in ConnectivityService. Instead of trying to access that via ConnectivityManager, pass this capability in to Tethering directly, in the TetheringDependencies object. Also: - ConnectivityManager is only a source of static constants now, so "import static" all the constants that are actually used. Test: as follows - built - flashed - booted - runtest frameworks-net works - manual USB towards WiFi tethering works Bug: 68951715 Merged-In: Ifa121b057f9959ddb980edc940327929e48ea973 Merged-In: Iad6358dc2f1d10b322d22ec90543adc50882962d Change-Id: Ia64faaadefb4a5d84a50da98bdebd544b6fda101 (cherry picked from commit 465ff3a0c1da8afd5cb13b25ed9a3c95ee0dd2c4) --- .../core/java/com/android/server/ConnectivityService.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java index 861ae8310f..a1ef1ed9e9 100644 --- a/services/core/java/com/android/server/ConnectivityService.java +++ b/services/core/java/com/android/server/ConnectivityService.java @@ -910,7 +910,12 @@ public class ConnectivityService extends IConnectivityManager.Stub private Tethering makeTethering() { // TODO: Move other elements into @Overridden getters. - final TetheringDependencies deps = new TetheringDependencies(); + final TetheringDependencies deps = new TetheringDependencies() { + @Override + public boolean isTetheringSupported() { + return ConnectivityService.this.isTetheringSupported(); + } + }; return new Tethering(mContext, mNetd, mStatsService, mPolicyManager, IoThread.get().getLooper(), new MockableSystemProperties(), deps);