summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apex/statsd/service/java/com/android/server/stats/StatsCompanionService.java19
-rw-r--r--cmds/statsd/src/external/StatsPullerManager.cpp4
-rw-r--r--services/core/java/com/android/server/stats/pull/StatsPullAtomService.java26
3 files changed, 23 insertions, 26 deletions
diff --git a/apex/statsd/service/java/com/android/server/stats/StatsCompanionService.java b/apex/statsd/service/java/com/android/server/stats/StatsCompanionService.java
index e43ee6141e78..6dbdca79258b 100644
--- a/apex/statsd/service/java/com/android/server/stats/StatsCompanionService.java
+++ b/apex/statsd/service/java/com/android/server/stats/StatsCompanionService.java
@@ -969,20 +969,6 @@ public class StatsCompanionService extends IStatsCompanionService.Stub {
}
}
- private void pullTimeZoneDataInfo(int tagId,
- long elapsedNanos, long wallClockNanos, List<StatsLogEventWrapper> pulledData) {
- String tzDbVersion = "Unknown";
- try {
- tzDbVersion = android.icu.util.TimeZone.getTZDataVersion();
- } catch (Exception e) {
- Log.e(TAG, "Getting tzdb version failed: ", e);
- }
-
- StatsLogEventWrapper e = new StatsLogEventWrapper(tagId, elapsedNanos, wallClockNanos);
- e.writeString(tzDbVersion);
- pulledData.add(e);
- }
-
private void pullExternalStorageInfo(int tagId, long elapsedNanos, long wallClockNanos,
List<StatsLogEventWrapper> pulledData) {
StorageManager storageManager = mContext.getSystemService(StorageManager.class);
@@ -1133,11 +1119,6 @@ public class StatsCompanionService extends IStatsCompanionService.Stub {
break;
}
- case StatsLog.TIME_ZONE_DATA_INFO: {
- pullTimeZoneDataInfo(tagId, elapsedNanos, wallClockNanos, ret);
- break;
- }
-
case StatsLog.EXTERNAL_STORAGE_INFO: {
pullExternalStorageInfo(tagId, elapsedNanos, wallClockNanos, ret);
break;
diff --git a/cmds/statsd/src/external/StatsPullerManager.cpp b/cmds/statsd/src/external/StatsPullerManager.cpp
index 6696bbdd7a59..a9bc44ee0116 100644
--- a/cmds/statsd/src/external/StatsPullerManager.cpp
+++ b/cmds/statsd/src/external/StatsPullerManager.cpp
@@ -113,10 +113,6 @@ std::map<PullerKey, PullAtomInfo> StatsPullerManager::kAllPullAtomInfo = {
// TrainInfo.
{{.atomTag = android::util::TRAIN_INFO}, {.puller = new TrainInfoPuller()}},
- // TimeZoneDataInfo.
- {{.atomTag = android::util::TIME_ZONE_DATA_INFO},
- {.puller = new StatsCompanionServicePuller(android::util::TIME_ZONE_DATA_INFO)}},
-
// ExternalStorageInfo
{{.atomTag = android::util::EXTERNAL_STORAGE_INFO},
{.puller = new StatsCompanionServicePuller(android::util::EXTERNAL_STORAGE_INFO)}},
diff --git a/services/core/java/com/android/server/stats/pull/StatsPullAtomService.java b/services/core/java/com/android/server/stats/pull/StatsPullAtomService.java
index f93f29afb4e6..3115ea68787f 100644
--- a/services/core/java/com/android/server/stats/pull/StatsPullAtomService.java
+++ b/services/core/java/com/android/server/stats/pull/StatsPullAtomService.java
@@ -168,6 +168,7 @@ import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
+import java.util.MissingResourceException;
import java.util.Objects;
import java.util.Set;
import java.util.UUID;
@@ -2311,11 +2312,30 @@ public class StatsPullAtomService extends SystemService {
}
private void registerTimeZoneDataInfo() {
- // No op.
+ int tagId = StatsLog.TIME_ZONE_DATA_INFO;
+ mStatsManager.registerPullAtomCallback(
+ tagId,
+ null, // use default PullAtomMetadata values
+ (atomTag, data) -> pullTimeZoneDataInfo(atomTag, data),
+ BackgroundThread.getExecutor()
+ );
}
- private void pullTimeZoneDataInfo() {
- // No op.
+ private int pullTimeZoneDataInfo(int atomTag, List<StatsEvent> pulledData) {
+ String tzDbVersion = "Unknown";
+ try {
+ tzDbVersion = android.icu.util.TimeZone.getTZDataVersion();
+ } catch (MissingResourceException e) {
+ Slog.e(TAG, "Getting tzdb version failed: ", e);
+ return StatsManager.PULL_SKIP;
+ }
+
+ StatsEvent e = StatsEvent.newBuilder()
+ .setAtomId(atomTag)
+ .writeString(tzDbVersion)
+ .build();
+ pulledData.add(e);
+ return StatsManager.PULL_SUCCESS;
}
private void registerExternalStorageInfo() {