From ad166b43df6c9775c35a4a7161ac0736907f6cd3 Mon Sep 17 00:00:00 2001 From: Junyu Lai Date: Tue, 7 Dec 2021 08:25:31 +0000 Subject: [PATCH 1/2] [MS08] Move NetworkStats files to f/b/package/ConnectivityT NetworkStatsService is going to be moved into ConnectivityService module. Move all related files to packages/ConnectivityT so that it can be easily migrate these files to connectivity module after clearing the hidden API usages. Bug: 197717846 Test: TH Change-Id: Iead00832b5eb7b1dc40a92027c5a14ae8316b16c --- framework-t/Sources.bp | 68 +++++++++++++++++-- .../src}/android/app/usage/NetworkStats.java | 0 .../app/usage/NetworkStatsManager.java | 0 .../src}/android/net/DataUsageRequest.aidl | 0 .../src}/android/net/DataUsageRequest.java | 0 .../android/net/INetworkStatsService.aidl | 0 .../android/net/INetworkStatsSession.aidl | 0 .../src}/android/net/NetworkIdentity.java | 0 .../android/net/NetworkStateSnapshot.java | 0 .../src}/android/net/NetworkStats.java | 0 .../src}/android/net/NetworkStatsHistory.aidl | 0 .../src}/android/net/NetworkStatsHistory.java | 0 .../src}/android/net/NetworkTemplate.java | 0 .../src}/android/net/TrafficStats.java | 0 .../android/net/UnderlyingNetworkInfo.aidl | 0 .../android/net/UnderlyingNetworkInfo.java | 0 .../provider/INetworkStatsProvider.aidl | 0 .../INetworkStatsProviderCallback.aidl | 0 .../provider/NetworkStatsProvider.java | 0 .../android/net/NetworkStats.aidl | 0 .../android/net/NetworkTemplate.aidl | 0 service-t/Sources.bp | 36 +++++++++- .../server/net/NetworkIdentitySet.java | 0 .../server/net/NetworkStatsAccess.java | 0 .../server/net/NetworkStatsCollection.java | 0 .../server/net/NetworkStatsFactory.java | 0 .../server/net/NetworkStatsObservers.java | 0 .../server/net/NetworkStatsRecorder.java | 0 .../server/net/NetworkStatsService.java | 0 .../net/NetworkStatsSubscriptionsMonitor.java | 0 30 files changed, 98 insertions(+), 6 deletions(-) rename {core/java => framework-t/src}/android/app/usage/NetworkStats.java (100%) rename {core/java => framework-t/src}/android/app/usage/NetworkStatsManager.java (100%) rename {core/java => framework-t/src}/android/net/DataUsageRequest.aidl (100%) rename {core/java => framework-t/src}/android/net/DataUsageRequest.java (100%) rename {core/java => framework-t/src}/android/net/INetworkStatsService.aidl (100%) rename {core/java => framework-t/src}/android/net/INetworkStatsSession.aidl (100%) rename {core/java => framework-t/src}/android/net/NetworkIdentity.java (100%) rename {core/java => framework-t/src}/android/net/NetworkStateSnapshot.java (100%) rename {core/java => framework-t/src}/android/net/NetworkStats.java (100%) rename {core/java => framework-t/src}/android/net/NetworkStatsHistory.aidl (100%) rename {core/java => framework-t/src}/android/net/NetworkStatsHistory.java (100%) rename {core/java => framework-t/src}/android/net/NetworkTemplate.java (100%) rename {core/java => framework-t/src}/android/net/TrafficStats.java (100%) rename {core/java => framework-t/src}/android/net/UnderlyingNetworkInfo.aidl (100%) rename {core/java => framework-t/src}/android/net/UnderlyingNetworkInfo.java (100%) rename {core/java => framework-t/src}/android/net/netstats/provider/INetworkStatsProvider.aidl (100%) rename {core/java => framework-t/src}/android/net/netstats/provider/INetworkStatsProviderCallback.aidl (100%) rename {core/java => framework-t/src}/android/net/netstats/provider/NetworkStatsProvider.java (100%) rename {core/java => framework/aidl-export}/android/net/NetworkStats.aidl (100%) rename {core/java => framework/aidl-export}/android/net/NetworkTemplate.aidl (100%) rename {services/core/java => service-t/src}/com/android/server/net/NetworkIdentitySet.java (100%) rename {services/core/java => service-t/src}/com/android/server/net/NetworkStatsAccess.java (100%) rename {services/core/java => service-t/src}/com/android/server/net/NetworkStatsCollection.java (100%) rename {services/core/java => service-t/src}/com/android/server/net/NetworkStatsFactory.java (100%) rename {services/core/java => service-t/src}/com/android/server/net/NetworkStatsObservers.java (100%) rename {services/core/java => service-t/src}/com/android/server/net/NetworkStatsRecorder.java (100%) rename {services/core/java => service-t/src}/com/android/server/net/NetworkStatsService.java (100%) rename {services/core/java => service-t/src}/com/android/server/net/NetworkStatsSubscriptionsMonitor.java (100%) diff --git a/framework-t/Sources.bp b/framework-t/Sources.bp index 2363a9f8d4..9c07f399f9 100644 --- a/framework-t/Sources.bp +++ b/framework-t/Sources.bp @@ -19,11 +19,58 @@ package { default_applicable_licenses: ["Android-Apache-2.0"], } +// NetworkStats related libraries. + +filegroup { + name: "framework-connectivity-netstats-internal-sources", + srcs: [ + "src/android/app/usage/*.java", + "src/android/net/DataUsage*.*", + "src/android/net/INetworkStats*.*", + "src/android/net/NetworkIdentity*.java", + "src/android/net/NetworkStateSnapshot.*", + "src/android/net/NetworkStats*.*", + "src/android/net/NetworkTemplate.*", + "src/android/net/TrafficStats.java", + "src/android/net/UnderlyingNetworkInfo.*", + "src/android/net/netstats/**/*.*", + ], + path: "src", + visibility: [ + "//visibility:private", + ], +} + +filegroup { + name: "framework-connectivity-netstats-aidl-export-sources", + srcs: [ + "aidl-export/android/net/NetworkStats.aidl", + "aidl-export/android/net/NetworkTemplate.aidl", + ], + path: "aidl-export", + visibility: [ + "//visibility:private", + ], +} + +filegroup { + name: "framework-connectivity-netstats-sources", + srcs: [ + ":framework-connectivity-netstats-internal-sources", + ":framework-connectivity-netstats-aidl-export-sources", + ], + visibility: [ + "//visibility:private", + ], +} + +// Nsd related libraries. + filegroup { name: "framework-connectivity-nsd-internal-sources", srcs: [ - "src/**/*.java", - "src/**/*.aidl", + "src/android/net/nsd/*.aidl", + "src/android/net/nsd/*.java", ], path: "src", visibility: [ @@ -34,7 +81,7 @@ filegroup { filegroup { name: "framework-connectivity-nsd-aidl-export-sources", srcs: [ - "aidl-export/**/*.aidl", + "aidl-export/android/net/nsd/*.aidl", ], path: "aidl-export", visibility: [ @@ -49,6 +96,19 @@ filegroup { ":framework-connectivity-nsd-aidl-export-sources", ], visibility: [ - "//frameworks/base", + "//visibility:private", ], } + +// Connectivity-T common libraries. + +filegroup { + name: "framework-connectivity-tiramisu-sources", + srcs: [ + ":framework-connectivity-netstats-sources", + ":framework-connectivity-nsd-sources", + ], + visibility: [ + "//frameworks/base", + ], +} \ No newline at end of file diff --git a/core/java/android/app/usage/NetworkStats.java b/framework-t/src/android/app/usage/NetworkStats.java similarity index 100% rename from core/java/android/app/usage/NetworkStats.java rename to framework-t/src/android/app/usage/NetworkStats.java diff --git a/core/java/android/app/usage/NetworkStatsManager.java b/framework-t/src/android/app/usage/NetworkStatsManager.java similarity index 100% rename from core/java/android/app/usage/NetworkStatsManager.java rename to framework-t/src/android/app/usage/NetworkStatsManager.java diff --git a/core/java/android/net/DataUsageRequest.aidl b/framework-t/src/android/net/DataUsageRequest.aidl similarity index 100% rename from core/java/android/net/DataUsageRequest.aidl rename to framework-t/src/android/net/DataUsageRequest.aidl diff --git a/core/java/android/net/DataUsageRequest.java b/framework-t/src/android/net/DataUsageRequest.java similarity index 100% rename from core/java/android/net/DataUsageRequest.java rename to framework-t/src/android/net/DataUsageRequest.java diff --git a/core/java/android/net/INetworkStatsService.aidl b/framework-t/src/android/net/INetworkStatsService.aidl similarity index 100% rename from core/java/android/net/INetworkStatsService.aidl rename to framework-t/src/android/net/INetworkStatsService.aidl diff --git a/core/java/android/net/INetworkStatsSession.aidl b/framework-t/src/android/net/INetworkStatsSession.aidl similarity index 100% rename from core/java/android/net/INetworkStatsSession.aidl rename to framework-t/src/android/net/INetworkStatsSession.aidl diff --git a/core/java/android/net/NetworkIdentity.java b/framework-t/src/android/net/NetworkIdentity.java similarity index 100% rename from core/java/android/net/NetworkIdentity.java rename to framework-t/src/android/net/NetworkIdentity.java diff --git a/core/java/android/net/NetworkStateSnapshot.java b/framework-t/src/android/net/NetworkStateSnapshot.java similarity index 100% rename from core/java/android/net/NetworkStateSnapshot.java rename to framework-t/src/android/net/NetworkStateSnapshot.java diff --git a/core/java/android/net/NetworkStats.java b/framework-t/src/android/net/NetworkStats.java similarity index 100% rename from core/java/android/net/NetworkStats.java rename to framework-t/src/android/net/NetworkStats.java diff --git a/core/java/android/net/NetworkStatsHistory.aidl b/framework-t/src/android/net/NetworkStatsHistory.aidl similarity index 100% rename from core/java/android/net/NetworkStatsHistory.aidl rename to framework-t/src/android/net/NetworkStatsHistory.aidl diff --git a/core/java/android/net/NetworkStatsHistory.java b/framework-t/src/android/net/NetworkStatsHistory.java similarity index 100% rename from core/java/android/net/NetworkStatsHistory.java rename to framework-t/src/android/net/NetworkStatsHistory.java diff --git a/core/java/android/net/NetworkTemplate.java b/framework-t/src/android/net/NetworkTemplate.java similarity index 100% rename from core/java/android/net/NetworkTemplate.java rename to framework-t/src/android/net/NetworkTemplate.java diff --git a/core/java/android/net/TrafficStats.java b/framework-t/src/android/net/TrafficStats.java similarity index 100% rename from core/java/android/net/TrafficStats.java rename to framework-t/src/android/net/TrafficStats.java diff --git a/core/java/android/net/UnderlyingNetworkInfo.aidl b/framework-t/src/android/net/UnderlyingNetworkInfo.aidl similarity index 100% rename from core/java/android/net/UnderlyingNetworkInfo.aidl rename to framework-t/src/android/net/UnderlyingNetworkInfo.aidl diff --git a/core/java/android/net/UnderlyingNetworkInfo.java b/framework-t/src/android/net/UnderlyingNetworkInfo.java similarity index 100% rename from core/java/android/net/UnderlyingNetworkInfo.java rename to framework-t/src/android/net/UnderlyingNetworkInfo.java diff --git a/core/java/android/net/netstats/provider/INetworkStatsProvider.aidl b/framework-t/src/android/net/netstats/provider/INetworkStatsProvider.aidl similarity index 100% rename from core/java/android/net/netstats/provider/INetworkStatsProvider.aidl rename to framework-t/src/android/net/netstats/provider/INetworkStatsProvider.aidl diff --git a/core/java/android/net/netstats/provider/INetworkStatsProviderCallback.aidl b/framework-t/src/android/net/netstats/provider/INetworkStatsProviderCallback.aidl similarity index 100% rename from core/java/android/net/netstats/provider/INetworkStatsProviderCallback.aidl rename to framework-t/src/android/net/netstats/provider/INetworkStatsProviderCallback.aidl diff --git a/core/java/android/net/netstats/provider/NetworkStatsProvider.java b/framework-t/src/android/net/netstats/provider/NetworkStatsProvider.java similarity index 100% rename from core/java/android/net/netstats/provider/NetworkStatsProvider.java rename to framework-t/src/android/net/netstats/provider/NetworkStatsProvider.java diff --git a/core/java/android/net/NetworkStats.aidl b/framework/aidl-export/android/net/NetworkStats.aidl similarity index 100% rename from core/java/android/net/NetworkStats.aidl rename to framework/aidl-export/android/net/NetworkStats.aidl diff --git a/core/java/android/net/NetworkTemplate.aidl b/framework/aidl-export/android/net/NetworkTemplate.aidl similarity index 100% rename from core/java/android/net/NetworkTemplate.aidl rename to framework/aidl-export/android/net/NetworkTemplate.aidl diff --git a/service-t/Sources.bp b/service-t/Sources.bp index 529f58d130..6a64910609 100644 --- a/service-t/Sources.bp +++ b/service-t/Sources.bp @@ -19,13 +19,45 @@ package { default_applicable_licenses: ["Android-Apache-2.0"], } +// NetworkStats related libraries. + +filegroup { + name: "services.connectivity-netstats-sources", + srcs: [ + "src/com/android/server/net/NetworkIdentity*.java", + "src/com/android/server/net/NetworkStats*.java", + ], + path: "src", + visibility: [ + "//visibility:private", + ], +} + +// Nsd related libraries. + filegroup { name: "services.connectivity-nsd-sources", srcs: [ - "src/**/*.java", + "src/com/android/server/INativeDaemon*.java", + "src/com/android/server/NativeDaemon*.java", + "src/com/android/server/Nsd*.java", + ], + path: "src", + visibility: [ + "//visibility:private", + ], +} + +// Connectivity-T common libraries. + +filegroup { + name: "services.connectivity-tiramisu-sources", + srcs: [ + ":services.connectivity-netstats-sources", + ":services.connectivity-nsd-sources", ], path: "src", visibility: [ "//frameworks/base/services/core", ], -} +} \ No newline at end of file diff --git a/services/core/java/com/android/server/net/NetworkIdentitySet.java b/service-t/src/com/android/server/net/NetworkIdentitySet.java similarity index 100% rename from services/core/java/com/android/server/net/NetworkIdentitySet.java rename to service-t/src/com/android/server/net/NetworkIdentitySet.java diff --git a/services/core/java/com/android/server/net/NetworkStatsAccess.java b/service-t/src/com/android/server/net/NetworkStatsAccess.java similarity index 100% rename from services/core/java/com/android/server/net/NetworkStatsAccess.java rename to service-t/src/com/android/server/net/NetworkStatsAccess.java diff --git a/services/core/java/com/android/server/net/NetworkStatsCollection.java b/service-t/src/com/android/server/net/NetworkStatsCollection.java similarity index 100% rename from services/core/java/com/android/server/net/NetworkStatsCollection.java rename to service-t/src/com/android/server/net/NetworkStatsCollection.java diff --git a/services/core/java/com/android/server/net/NetworkStatsFactory.java b/service-t/src/com/android/server/net/NetworkStatsFactory.java similarity index 100% rename from services/core/java/com/android/server/net/NetworkStatsFactory.java rename to service-t/src/com/android/server/net/NetworkStatsFactory.java diff --git a/services/core/java/com/android/server/net/NetworkStatsObservers.java b/service-t/src/com/android/server/net/NetworkStatsObservers.java similarity index 100% rename from services/core/java/com/android/server/net/NetworkStatsObservers.java rename to service-t/src/com/android/server/net/NetworkStatsObservers.java diff --git a/services/core/java/com/android/server/net/NetworkStatsRecorder.java b/service-t/src/com/android/server/net/NetworkStatsRecorder.java similarity index 100% rename from services/core/java/com/android/server/net/NetworkStatsRecorder.java rename to service-t/src/com/android/server/net/NetworkStatsRecorder.java diff --git a/services/core/java/com/android/server/net/NetworkStatsService.java b/service-t/src/com/android/server/net/NetworkStatsService.java similarity index 100% rename from services/core/java/com/android/server/net/NetworkStatsService.java rename to service-t/src/com/android/server/net/NetworkStatsService.java diff --git a/services/core/java/com/android/server/net/NetworkStatsSubscriptionsMonitor.java b/service-t/src/com/android/server/net/NetworkStatsSubscriptionsMonitor.java similarity index 100% rename from services/core/java/com/android/server/net/NetworkStatsSubscriptionsMonitor.java rename to service-t/src/com/android/server/net/NetworkStatsSubscriptionsMonitor.java From c8c87d4a01eba96e93f84a65ef42d5fa61248008 Mon Sep 17 00:00:00 2001 From: Junyu Lai Date: Fri, 10 Dec 2021 07:46:43 +0000 Subject: [PATCH 2/2] [MS07.1] Move NetworkStatsCollection/IdentitySet into frameworks These files are needed for the data migration util system Api interfaces to allow OEMs to construct NetworkStats* objects. Thus, they need to be moved into android.net package, and some of them will be exposed as @SystemApi in T. Eventually these classes will be moved into the Connectivity module, but in the mean time they will be temporarily moved to f/b/package/ConnectivityT for the preparation stage. However, the tests are already in the module. Therefore for the S-derived branch, the test cannot see the renamed classes since any framework CLs will not be auto-merged into this branch. Thus, the tests need to stay disabled on the S-derived branch, and will be re-enabled after all files are moved into the module. Test: TH Bug: 197717846 Change-Id: I95278a99cf2437ada28001161ceea17a1d32f2a4 --- .../src/android}/net/NetworkIdentitySet.java | 13 ++++--- .../src/android}/net/NetworkStatsAccess.java | 10 ++++-- .../android}/net/NetworkStatsCollection.java | 35 ++++++++++++------- .../server/net/NetworkStatsObservers.java | 3 ++ .../server/net/NetworkStatsRecorder.java | 3 ++ .../server/net/NetworkStatsService.java | 3 ++ 6 files changed, 47 insertions(+), 20 deletions(-) rename {service-t/src/com/android/server => framework-t/src/android}/net/NetworkIdentitySet.java (97%) rename {service-t/src/com/android/server => framework-t/src/android}/net/NetworkStatsAccess.java (98%) rename {service-t/src/com/android/server => framework-t/src/android}/net/NetworkStatsCollection.java (97%) diff --git a/service-t/src/com/android/server/net/NetworkIdentitySet.java b/framework-t/src/android/net/NetworkIdentitySet.java similarity index 97% rename from service-t/src/com/android/server/net/NetworkIdentitySet.java rename to framework-t/src/android/net/NetworkIdentitySet.java index 22ed781da9..abbebef85c 100644 --- a/service-t/src/com/android/server/net/NetworkIdentitySet.java +++ b/framework-t/src/android/net/NetworkIdentitySet.java @@ -14,9 +14,10 @@ * limitations under the License. */ -package com.android.server.net; +package android.net; + +import static android.net.ConnectivityManager.TYPE_MOBILE; -import android.net.NetworkIdentity; import android.service.NetworkIdentitySetProto; import android.util.proto.ProtoOutputStream; @@ -25,8 +26,6 @@ import java.io.DataOutput; import java.io.IOException; import java.util.HashSet; -import static android.net.ConnectivityManager.TYPE_MOBILE; - /** * Identity of a {@code iface}, defined by the set of {@link NetworkIdentity} * active on that interface. @@ -97,6 +96,9 @@ public class NetworkIdentitySet extends HashSet implements } } + /** + * Method to serialize this object into a {@code DataOutput}. + */ public void writeToStream(DataOutput out) throws IOException { out.writeInt(VERSION_ADD_OEM_MANAGED_NETWORK); out.writeInt(size()); @@ -179,6 +181,9 @@ public class NetworkIdentitySet extends HashSet implements return ident.compareTo(anotherIdent); } + /** + * Method to dump this object into proto debug file. + */ public void dumpDebug(ProtoOutputStream proto, long tag) { final long start = proto.start(tag); diff --git a/service-t/src/com/android/server/net/NetworkStatsAccess.java b/framework-t/src/android/net/NetworkStatsAccess.java similarity index 98% rename from service-t/src/com/android/server/net/NetworkStatsAccess.java rename to framework-t/src/android/net/NetworkStatsAccess.java index d25eae409d..3885a9e6d5 100644 --- a/service-t/src/com/android/server/net/NetworkStatsAccess.java +++ b/framework-t/src/android/net/NetworkStatsAccess.java @@ -11,10 +11,10 @@ * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and - * limitations under the License + * limitations under the License. */ -package com.android.server.net; +package android.net; import static android.Manifest.permission.READ_NETWORK_USAGE_HISTORY; import static android.net.NetworkStats.UID_ALL; @@ -37,7 +37,11 @@ import com.android.server.LocalServices; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; -/** Utility methods for controlling access to network stats APIs. */ +/** + * Utility methods for controlling access to network stats APIs. + * + * @hide + */ public final class NetworkStatsAccess { private NetworkStatsAccess() {} diff --git a/service-t/src/com/android/server/net/NetworkStatsCollection.java b/framework-t/src/android/net/NetworkStatsCollection.java similarity index 97% rename from service-t/src/com/android/server/net/NetworkStatsCollection.java rename to framework-t/src/android/net/NetworkStatsCollection.java index 213ea402f5..0d3b9ed4e3 100644 --- a/service-t/src/com/android/server/net/NetworkStatsCollection.java +++ b/framework-t/src/android/net/NetworkStatsCollection.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.android.server.net; +package android.net; import static android.net.NetworkStats.DEFAULT_NETWORK_NO; import static android.net.NetworkStats.DEFAULT_NETWORK_YES; @@ -31,13 +31,7 @@ import static android.net.TrafficStats.UID_REMOVED; import static android.text.format.DateUtils.WEEK_IN_MILLIS; import static com.android.internal.net.NetworkUtilsInternal.multiplySafeByRational; -import static com.android.server.net.NetworkStatsService.TAG; -import android.net.NetworkIdentity; -import android.net.NetworkStats; -import android.net.NetworkStatsHistory; -import android.net.NetworkTemplate; -import android.net.TrafficStats; import android.os.Binder; import android.service.NetworkStatsCollectionKeyProto; import android.service.NetworkStatsCollectionProto; @@ -85,8 +79,11 @@ import java.util.Objects; /** * Collection of {@link NetworkStatsHistory}, stored based on combined key of * {@link NetworkIdentitySet}, UID, set, and tag. Knows how to persist itself. + * + * @hide */ public class NetworkStatsCollection implements FileRotator.Reader, FileRotator.Writer { + private static final String TAG = NetworkStatsCollection.class.getSimpleName(); /** File header magic number: "ANET" */ private static final int FILE_MAGIC = 0x414E4554; @@ -366,8 +363,8 @@ public class NetworkStatsCollection implements FileRotator.Reader, FileRotator.W entry.uid = key.uid; entry.set = key.set; entry.tag = key.tag; - entry.defaultNetwork = key.ident.areAllMembersOnDefaultNetwork() ? - DEFAULT_NETWORK_YES : DEFAULT_NETWORK_NO; + entry.defaultNetwork = key.ident.areAllMembersOnDefaultNetwork() + ? DEFAULT_NETWORK_YES : DEFAULT_NETWORK_NO; entry.metered = key.ident.isAnyMemberMetered() ? METERED_YES : METERED_NO; entry.roaming = key.ident.isAnyMemberRoaming() ? ROAMING_YES : ROAMING_NO; entry.rxBytes = historyEntry.rxBytes; @@ -521,6 +518,12 @@ public class NetworkStatsCollection implements FileRotator.Reader, FileRotator.W } } + /** + * Read legacy network summary statistics file format into the collection, + * See {@code NetworkStatsService#maybeUpgradeLegacyStatsLocked}. + * + * @deprecated + */ @Deprecated public void readLegacyNetwork(File file) throws IOException { final AtomicFile inputFile = new AtomicFile(file); @@ -560,6 +563,12 @@ public class NetworkStatsCollection implements FileRotator.Reader, FileRotator.W } } + /** + * Read legacy Uid statistics file format into the collection, + * See {@code NetworkStatsService#maybeUpgradeLegacyStatsLocked}. + * + * @deprecated + */ @Deprecated public void readLegacyUid(File file, boolean onlyTags) throws IOException { final AtomicFile inputFile = new AtomicFile(file); @@ -774,19 +783,19 @@ public class NetworkStatsCollection implements FileRotator.Reader, FileRotator.W public final int set; public final int tag; - private final int hashCode; + private final int mHashCode; - public Key(NetworkIdentitySet ident, int uid, int set, int tag) { + Key(NetworkIdentitySet ident, int uid, int set, int tag) { this.ident = ident; this.uid = uid; this.set = set; this.tag = tag; - hashCode = Objects.hash(ident, uid, set, tag); + mHashCode = Objects.hash(ident, uid, set, tag); } @Override public int hashCode() { - return hashCode; + return mHashCode; } @Override diff --git a/service-t/src/com/android/server/net/NetworkStatsObservers.java b/service-t/src/com/android/server/net/NetworkStatsObservers.java index 2564daeaa1..1a0866d2f9 100644 --- a/service-t/src/com/android/server/net/NetworkStatsObservers.java +++ b/service-t/src/com/android/server/net/NetworkStatsObservers.java @@ -22,7 +22,10 @@ import static com.android.internal.util.Preconditions.checkArgument; import android.app.usage.NetworkStatsManager; import android.net.DataUsageRequest; +import android.net.NetworkIdentitySet; import android.net.NetworkStats; +import android.net.NetworkStatsAccess; +import android.net.NetworkStatsCollection; import android.net.NetworkStatsHistory; import android.net.NetworkTemplate; import android.os.Bundle; diff --git a/service-t/src/com/android/server/net/NetworkStatsRecorder.java b/service-t/src/com/android/server/net/NetworkStatsRecorder.java index 978ae87d39..5e27c776cc 100644 --- a/service-t/src/com/android/server/net/NetworkStatsRecorder.java +++ b/service-t/src/com/android/server/net/NetworkStatsRecorder.java @@ -21,8 +21,11 @@ import static android.net.TrafficStats.KB_IN_BYTES; import static android.net.TrafficStats.MB_IN_BYTES; import static android.text.format.DateUtils.YEAR_IN_MILLIS; +import android.net.NetworkIdentitySet; import android.net.NetworkStats; import android.net.NetworkStats.NonMonotonicObserver; +import android.net.NetworkStatsAccess; +import android.net.NetworkStatsCollection; import android.net.NetworkStatsHistory; import android.net.NetworkTemplate; import android.net.TrafficStats; diff --git a/service-t/src/com/android/server/net/NetworkStatsService.java b/service-t/src/com/android/server/net/NetworkStatsService.java index c876d411fa..2beca73ecd 100644 --- a/service-t/src/com/android/server/net/NetworkStatsService.java +++ b/service-t/src/com/android/server/net/NetworkStatsService.java @@ -96,11 +96,14 @@ import android.net.INetworkStatsSession; import android.net.Network; import android.net.NetworkCapabilities; import android.net.NetworkIdentity; +import android.net.NetworkIdentitySet; import android.net.NetworkSpecifier; import android.net.NetworkStack; import android.net.NetworkStateSnapshot; import android.net.NetworkStats; import android.net.NetworkStats.NonMonotonicObserver; +import android.net.NetworkStatsAccess; +import android.net.NetworkStatsCollection; import android.net.NetworkStatsHistory; import android.net.NetworkTemplate; import android.net.TelephonyNetworkSpecifier;