Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 16dcd33a authored by David Chen's avatar David Chen
Browse files

Small fixes to StatsManager API.

Adds some annotations, deletes an unused API method, and adds some
comments.

Test: Test that make succeeds.
Bug: 72562867
Change-Id: I6c93ee4aeeacf6842795256c76551cfb1c28888d
parent 28ff9cee
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -364,7 +364,6 @@ package android.app {
  }

  public final class StatsManager {
    method public boolean addConfiguration(long, byte[], java.lang.String, java.lang.String);
    method public boolean addConfiguration(long, byte[]);
    method public byte[] getData(long);
    method public byte[] getMetadata();
+7 −13
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@
package android.app;

import android.Manifest;
import android.annotation.Nullable;
import android.annotation.RequiresPermission;
import android.annotation.SystemApi;
import android.os.IBinder;
@@ -74,14 +75,6 @@ public final class StatsManager {
    public StatsManager() {
    }

    /**
     * Temporary. Will be deleted.
     */
    @RequiresPermission(Manifest.permission.DUMP)
    public boolean addConfiguration(long configKey, byte[] config, String a, String b) {
        return addConfiguration(configKey, config);
    }

    /**
     * Clients can send a configuration and simultaneously registers the name of a broadcast
     * receiver that listens for when it should request data.
@@ -226,10 +219,11 @@ public final class StatsManager {
     * the retrieved metrics from statsd memory.
     *
     * @param configKey Configuration key to retrieve data from.
     * @return Serialized ConfigMetricsReportList proto. Returns null on failure.
     * @return Serialized ConfigMetricsReportList proto. Returns null on failure (eg, if statsd
     * crashed).
     */
    @RequiresPermission(Manifest.permission.DUMP)
    public byte[] getData(long configKey) {
    public @Nullable byte[] getData(long configKey) {
        synchronized (this) {
            try {
                IStatsManager service = getIStatsManagerLocked();
@@ -239,7 +233,7 @@ public final class StatsManager {
                }
                return service.getData(configKey);
            } catch (RemoteException e) {
                if (DEBUG) Slog.d(TAG, "Failed to connecto statsd when getting data");
                if (DEBUG) Slog.d(TAG, "Failed to connect to statsd when getting data");
                return null;
            }
        }
@@ -250,10 +244,10 @@ public final class StatsManager {
     * the actual metrics themselves (metrics must be collected via {@link #getData(String)}.
     * This getter is not destructive and will not reset any metrics/counters.
     *
     * @return Serialized StatsdStatsReport proto. Returns null on failure.
     * @return Serialized StatsdStatsReport proto. Returns null on failure (eg, if statsd crashed).
     */
    @RequiresPermission(Manifest.permission.DUMP)
    public byte[] getMetadata() {
    public @Nullable byte[] getMetadata() {
        synchronized (this) {
            try {
                IStatsManager service = getIStatsManagerLocked();
+1 −2
Original line number Diff line number Diff line
@@ -18,8 +18,7 @@ package android.util;

/**
 * StatsLog provides an API for developers to send events to statsd. The events can be used to
 * define custom metrics inside statsd. We will rate-limit how often the calls can be made inside
 * statsd.
 * define custom metrics inside statsd.
 */
public final class StatsLog extends StatsLogInternal {
    private static final String TAG = "StatsManager";