From 7e9b25e7f9977fee51075e25d87b3d2cce61eb83 Mon Sep 17 00:00:00 2001 From: Sooraj Sasindran Date: Tue, 25 Jan 2022 14:49:29 -0800 Subject: [PATCH] Add getEnterpriseId api to network request Bug: 194332512 CTS-Coverage-Bug: 216481336 Test: build Change-Id: I1446f8eecf43f7c6d243dc82af08d04957dd60e3 --- framework/api/module-lib-current.txt | 2 ++ framework/src/android/net/NetworkRequest.java | 27 +++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/framework/api/module-lib-current.txt b/framework/api/module-lib-current.txt index db08c48dd0..a5afbd4c72 100644 --- a/framework/api/module-lib-current.txt +++ b/framework/api/module-lib-current.txt @@ -146,7 +146,9 @@ package android.net { } public class NetworkRequest implements android.os.Parcelable { + method @NonNull public int[] getEnterpriseIds(); method @NonNull public int[] getForbiddenCapabilities(); + method public boolean hasEnterpriseId(int); method public boolean hasForbiddenCapability(int); } diff --git a/framework/src/android/net/NetworkRequest.java b/framework/src/android/net/NetworkRequest.java index afc76d664a..b7a6076c34 100644 --- a/framework/src/android/net/NetworkRequest.java +++ b/framework/src/android/net/NetworkRequest.java @@ -724,6 +724,33 @@ public class NetworkRequest implements Parcelable { return networkCapabilities.getCapabilities(); } + /** + * Get the enteprise identifiers. + * + * Get all the enterprise identifiers set on this {@code NetworkCapability} + * @return array of all the enterprise identifiers. + * @hide + */ + @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) + public @NonNull @NetworkCapabilities.EnterpriseId int[] getEnterpriseIds() { + // No need to make a defensive copy here as NC#getCapabilities() already returns + // a new array. + return networkCapabilities.getEnterpriseIds(); + } + + /** + * Tests for the presence of an enterprise identifier on this instance. + * + * @param enterpriseId the enterprise capability identifier to be tested for. + * @return {@code true} if set on this instance. + * @hide + */ + @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) + public boolean hasEnterpriseId( + @NetworkCapabilities.EnterpriseId int enterpriseId) { + return networkCapabilities.hasEnterpriseId(enterpriseId); + } + /** * Gets all the forbidden capabilities set on this {@code NetworkRequest} instance. *