diff options
| author | markchien <markchien@google.com> | 2020-03-18 21:16:15 +0800 |
|---|---|---|
| committer | markchien <markchien@google.com> | 2020-03-19 19:10:23 +0800 |
| commit | 97c029e87d60f59d45e9fd1ef8ee51bd4336e03b (patch) | |
| tree | e10081a7ba0c311a4d26ce74b449a6d162d1ceb2 /core/java/android/net/ConnectivityManager.java | |
| parent | b1b08a0d454a98f56b5abe4f56502e2549297b8a (diff) | |
Move NetworkCallback to last parameter for new exposed requestNetwork
Bug: 151243698
Test: atest TetheringTests
Change-Id: I87ef1d451eefa6998b9793c4eacabae978376d24
Diffstat (limited to 'core/java/android/net/ConnectivityManager.java')
| -rw-r--r-- | core/java/android/net/ConnectivityManager.java | 30 |
1 files changed, 17 insertions, 13 deletions
diff --git a/core/java/android/net/ConnectivityManager.java b/core/java/android/net/ConnectivityManager.java index 99813c098809..b8f5890b3295 100644 --- a/core/java/android/net/ConnectivityManager.java +++ b/core/java/android/net/ConnectivityManager.java @@ -3685,29 +3685,29 @@ public class ConnectivityManager { /** * Helper function to request a network with a particular legacy type. * - * @deprecated This is temporarily public for tethering to backwards compatibility that uses - * the NetworkRequest API to request networks with legacy type and relies on - * CONNECTIVITY_ACTION broadcasts instead of NetworkCallbacks. New caller should use + * This API is only for use in internal system code that requests networks with legacy type and + * relies on CONNECTIVITY_ACTION broadcasts instead of NetworkCallbacks. New caller should use * {@link #requestNetwork(NetworkRequest, NetworkCallback, Handler)} instead. * - * TODO: update said system code to rely on NetworkCallbacks and make this method private. - * @param request {@link NetworkRequest} describing this request. - * @param networkCallback The {@link NetworkCallback} to be utilized for this request. Note - * the callback must not be shared - it uniquely specifies this request. * @param timeoutMs The time in milliseconds to attempt looking for a suitable network * before {@link NetworkCallback#onUnavailable()} is called. The timeout must * be a positive value (i.e. >0). * @param legacyType to specify the network type(#TYPE_*). * @param handler {@link Handler} to specify the thread upon which the callback will be invoked. + * @param networkCallback The {@link NetworkCallback} to be utilized for this request. Note + * the callback must not be shared - it uniquely specifies this request. * * @hide */ @SystemApi - @Deprecated + @RequiresPermission(NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK) public void requestNetwork(@NonNull NetworkRequest request, - @NonNull NetworkCallback networkCallback, int timeoutMs, int legacyType, - @NonNull Handler handler) { + int timeoutMs, int legacyType, @NonNull Handler handler, + @NonNull NetworkCallback networkCallback) { + if (legacyType == TYPE_NONE) { + throw new IllegalArgumentException("TYPE_NONE is meaningless legacy type"); + } CallbackHandler cbHandler = new CallbackHandler(handler); NetworkCapabilities nc = request.networkCapabilities; sendRequestForNetwork(nc, networkCallback, timeoutMs, REQUEST, legacyType, cbHandler); @@ -3806,7 +3806,8 @@ public class ConnectivityManager { public void requestNetwork(@NonNull NetworkRequest request, @NonNull NetworkCallback networkCallback, @NonNull Handler handler) { CallbackHandler cbHandler = new CallbackHandler(handler); - requestNetwork(request, networkCallback, 0, TYPE_NONE, cbHandler); + NetworkCapabilities nc = request.networkCapabilities; + sendRequestForNetwork(nc, networkCallback, 0, REQUEST, TYPE_NONE, cbHandler); } /** @@ -3839,7 +3840,9 @@ public class ConnectivityManager { public void requestNetwork(@NonNull NetworkRequest request, @NonNull NetworkCallback networkCallback, int timeoutMs) { checkTimeout(timeoutMs); - requestNetwork(request, networkCallback, timeoutMs, TYPE_NONE, getDefaultHandler()); + NetworkCapabilities nc = request.networkCapabilities; + sendRequestForNetwork(nc, networkCallback, timeoutMs, REQUEST, TYPE_NONE, + getDefaultHandler()); } /** @@ -3865,7 +3868,8 @@ public class ConnectivityManager { @NonNull NetworkCallback networkCallback, @NonNull Handler handler, int timeoutMs) { checkTimeout(timeoutMs); CallbackHandler cbHandler = new CallbackHandler(handler); - requestNetwork(request, networkCallback, timeoutMs, TYPE_NONE, cbHandler); + NetworkCapabilities nc = request.networkCapabilities; + sendRequestForNetwork(nc, networkCallback, timeoutMs, REQUEST, TYPE_NONE, cbHandler); } /** |
