diff --git a/framework-t/src/android/net/NetworkTemplate.java b/framework-t/src/android/net/NetworkTemplate.java index 2a5e7be755..c0ae8224b1 100644 --- a/framework-t/src/android/net/NetworkTemplate.java +++ b/framework-t/src/android/net/NetworkTemplate.java @@ -269,6 +269,7 @@ public final class NetworkTemplate implements Parcelable { * Since the merge set is dynamic, it should not be persisted or * used for determining equality. */ + @NonNull private final String[] mMatchSubscriberIds; @NonNull @@ -334,10 +335,9 @@ public final class NetworkTemplate implements Parcelable { String[] matchWifiNetworkKeys, int metered, int roaming, int defaultNetwork, int ratType, int oemManaged, int subscriberIdMatchRule) { Objects.requireNonNull(matchWifiNetworkKeys); + Objects.requireNonNull(matchSubscriberIds); mMatchRule = matchRule; mSubscriberId = subscriberId; - // TODO: Check whether mMatchSubscriberIds = null or mMatchSubscriberIds = {null} when - // mSubscriberId is null mMatchSubscriberIds = matchSubscriberIds; mMatchWifiNetworkKeys = matchWifiNetworkKeys; mMetered = metered; diff --git a/tests/common/java/android/net/netstats/NetworkTemplateTest.kt b/tests/common/java/android/net/netstats/NetworkTemplateTest.kt index 192694bb07..cdf32a406c 100644 --- a/tests/common/java/android/net/netstats/NetworkTemplateTest.kt +++ b/tests/common/java/android/net/netstats/NetworkTemplateTest.kt @@ -78,7 +78,7 @@ class NetworkTemplateTest { NetworkTemplate.Builder(matchRule).setSubscriberIds(setOf(TEST_IMSI1)) .setMeteredness(METERED_YES).build().let { val expectedTemplate = NetworkTemplate(matchRule, TEST_IMSI1, - arrayOf(TEST_IMSI1), arrayOf(), METERED_YES, + arrayOf(TEST_IMSI1), emptyArray(), METERED_YES, ROAMING_ALL, DEFAULT_NETWORK_ALL, NETWORK_TYPE_ALL, OEM_MANAGED_ALL, SUBSCRIBER_ID_MATCH_RULE_EXACT) assertEquals(expectedTemplate, it) @@ -91,7 +91,7 @@ class NetworkTemplateTest { NetworkTemplate.Builder(matchRule).setSubscriberIds(setOf(TEST_IMSI1)) .setRoaming(ROAMING_YES).setMeteredness(METERED_YES).build().let { val expectedTemplate = NetworkTemplate(matchRule, TEST_IMSI1, - arrayOf(TEST_IMSI1), arrayOf(), METERED_YES, + arrayOf(TEST_IMSI1), emptyArray(), METERED_YES, ROAMING_YES, DEFAULT_NETWORK_ALL, NETWORK_TYPE_ALL, OEM_MANAGED_ALL, SUBSCRIBER_ID_MATCH_RULE_EXACT) assertEquals(expectedTemplate, it) @@ -107,7 +107,7 @@ class NetworkTemplateTest { // regardless of IMSI. See buildTemplateMobileWildcard. NetworkTemplate.Builder(MATCH_MOBILE).setMeteredness(METERED_YES).build().let { val expectedTemplate = NetworkTemplate(MATCH_MOBILE_WILDCARD, null /*subscriberId*/, - null /*subscriberIds*/, arrayOf(), + emptyArray() /*subscriberIds*/, emptyArray(), METERED_YES, ROAMING_ALL, DEFAULT_NETWORK_ALL, NETWORK_TYPE_ALL, OEM_MANAGED_ALL, SUBSCRIBER_ID_MATCH_RULE_ALL) assertEquals(expectedTemplate, it) @@ -119,7 +119,7 @@ class NetworkTemplateTest { .setMeteredness(METERED_YES).setRatType(TelephonyManager.NETWORK_TYPE_UMTS) .build().let { val expectedTemplate = NetworkTemplate(MATCH_MOBILE, TEST_IMSI1, - arrayOf(TEST_IMSI1), arrayOf(), METERED_YES, + arrayOf(TEST_IMSI1), emptyArray(), METERED_YES, ROAMING_ALL, DEFAULT_NETWORK_ALL, TelephonyManager.NETWORK_TYPE_UMTS, OEM_MANAGED_ALL, SUBSCRIBER_ID_MATCH_RULE_EXACT) assertEquals(expectedTemplate, it) @@ -129,7 +129,7 @@ class NetworkTemplateTest { // regardless of Wifi Network Key. See buildTemplateWifiWildcard and buildTemplateWifi. NetworkTemplate.Builder(MATCH_WIFI).build().let { val expectedTemplate = NetworkTemplate(MATCH_WIFI_WILDCARD, null /*subscriberId*/, - null /*subscriberIds*/, arrayOf(), + emptyArray() /*subscriberIds*/, emptyArray(), METERED_ALL, ROAMING_ALL, DEFAULT_NETWORK_ALL, NETWORK_TYPE_ALL, OEM_MANAGED_ALL, SUBSCRIBER_ID_MATCH_RULE_ALL) assertEquals(expectedTemplate, it) @@ -139,7 +139,7 @@ class NetworkTemplateTest { // See buildTemplateWifi(wifiNetworkKey). NetworkTemplate.Builder(MATCH_WIFI).setWifiNetworkKeys(setOf(TEST_WIFI_KEY1)).build().let { val expectedTemplate = NetworkTemplate(MATCH_WIFI, null /*subscriberId*/, - null /*subscriberIds*/, arrayOf(TEST_WIFI_KEY1), + emptyArray() /*subscriberIds*/, arrayOf(TEST_WIFI_KEY1), METERED_ALL, ROAMING_ALL, DEFAULT_NETWORK_ALL, NETWORK_TYPE_ALL, OEM_MANAGED_ALL, SUBSCRIBER_ID_MATCH_RULE_ALL) assertEquals(expectedTemplate, it) @@ -161,7 +161,7 @@ class NetworkTemplateTest { listOf(MATCH_ETHERNET, MATCH_BLUETOOTH).forEach { matchRule -> NetworkTemplate.Builder(matchRule).build().let { val expectedTemplate = NetworkTemplate(matchRule, null /*subscriberId*/, - null /*subscriberIds*/, arrayOf(), + emptyArray() /*subscriberIds*/, emptyArray(), METERED_ALL, ROAMING_ALL, DEFAULT_NETWORK_ALL, NETWORK_TYPE_ALL, OEM_MANAGED_ALL, SUBSCRIBER_ID_MATCH_RULE_ALL) assertEquals(expectedTemplate, it) @@ -196,7 +196,7 @@ class NetworkTemplateTest { // Verify template which matches wifi wildcard with the given empty key set. NetworkTemplate.Builder(MATCH_WIFI).setWifiNetworkKeys(setOf()).build().let { val expectedTemplate = NetworkTemplate(MATCH_WIFI_WILDCARD, null /*subscriberId*/, - arrayOf() /*subscriberIds*/, arrayOf(), + emptyArray() /*subscriberIds*/, emptyArray(), METERED_ALL, ROAMING_ALL, DEFAULT_NETWORK_ALL, NETWORK_TYPE_ALL, OEM_MANAGED_ALL, SUBSCRIBER_ID_MATCH_RULE_ALL) assertEquals(expectedTemplate, it) diff --git a/tests/unit/java/android/net/NetworkTemplateTest.kt b/tests/unit/java/android/net/NetworkTemplateTest.kt index c10ba93aa6..3cf022812e 100644 --- a/tests/unit/java/android/net/NetworkTemplateTest.kt +++ b/tests/unit/java/android/net/NetworkTemplateTest.kt @@ -448,15 +448,15 @@ class NetworkTemplateTest { @Test fun testParcelUnparcel() { - val templateMobile = NetworkTemplate(MATCH_MOBILE, TEST_IMSI1, null, - arrayOf(), METERED_ALL, ROAMING_ALL, DEFAULT_NETWORK_ALL, + val templateMobile = NetworkTemplate(MATCH_MOBILE, TEST_IMSI1, emptyArray(), + emptyArray(), METERED_ALL, ROAMING_ALL, DEFAULT_NETWORK_ALL, TelephonyManager.NETWORK_TYPE_LTE, OEM_MANAGED_ALL, SUBSCRIBER_ID_MATCH_RULE_EXACT) - val templateWifi = NetworkTemplate(MATCH_WIFI, null, null, + val templateWifi = NetworkTemplate(MATCH_WIFI, null, emptyArray(), arrayOf(TEST_WIFI_KEY1), METERED_ALL, ROAMING_ALL, DEFAULT_NETWORK_ALL, 0, OEM_MANAGED_ALL, SUBSCRIBER_ID_MATCH_RULE_EXACT) - val templateOem = NetworkTemplate(MATCH_MOBILE, null, null, - arrayOf(), METERED_ALL, ROAMING_ALL, DEFAULT_NETWORK_ALL, 0, + val templateOem = NetworkTemplate(MATCH_MOBILE, null, emptyArray(), + emptyArray(), METERED_ALL, ROAMING_ALL, DEFAULT_NETWORK_ALL, 0, OEM_MANAGED_YES, SUBSCRIBER_ID_MATCH_RULE_EXACT) assertParcelSane(templateMobile, 10) assertParcelSane(templateWifi, 10)