summaryrefslogtreecommitdiff
path: root/core/java/android/net/ConnectivityManager.java
diff options
context:
space:
mode:
authormarkchien <markchien@google.com>2020-03-18 21:16:15 +0800
committermarkchien <markchien@google.com>2020-03-19 19:10:23 +0800
commit97c029e87d60f59d45e9fd1ef8ee51bd4336e03b (patch)
treee10081a7ba0c311a4d26ce74b449a6d162d1ceb2 /core/java/android/net/ConnectivityManager.java
parentb1b08a0d454a98f56b5abe4f56502e2549297b8a (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.java30
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);
}
/**