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

Commit 0697f964 authored by Chris Wren's avatar Chris Wren Committed by Android (Google) Code Review
Browse files

Merge "add clear methods to LogMaker"

parents 3cad2c33 a7c1b80f
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -26725,7 +26725,12 @@ package android.metrics {
    ctor public LogMaker(int);
    ctor public LogMaker(java.lang.Object[]);
    method public android.metrics.LogMaker addTaggedData(int, java.lang.Object);
    method public android.metrics.LogMaker clearCategory();
    method public android.metrics.LogMaker clearPackageName();
    method public android.metrics.LogMaker clearSubtype();
    method public android.metrics.LogMaker clearTaggedData(int);
    method public android.metrics.LogMaker clearTimestamp();
    method public android.metrics.LogMaker clearType();
    method public void deserialize(java.lang.Object[]);
    method public int getCategory();
    method public long getCounterBucket();
+25 −0
Original line number Diff line number Diff line
@@ -60,26 +60,51 @@ public class LogMaker {
        return this;
    }

    public LogMaker clearCategory() {
        entries.remove(MetricsEvent.RESERVED_FOR_LOGBUILDER_CATEGORY);
        return this;
    }

    public LogMaker setType(int type) {
        entries.put(MetricsEvent.RESERVED_FOR_LOGBUILDER_TYPE, type);
        return this;
    }

    public LogMaker clearType() {
        entries.remove(MetricsEvent.RESERVED_FOR_LOGBUILDER_TYPE);
        return this;
    }

    public LogMaker setSubtype(int subtype) {
        entries.put(MetricsEvent.RESERVED_FOR_LOGBUILDER_SUBTYPE, subtype);
        return this;
    }

    public LogMaker clearSubtype() {
        entries.remove(MetricsEvent.RESERVED_FOR_LOGBUILDER_SUBTYPE);
        return this;
    }

    public LogMaker setTimestamp(long timestamp) {
        entries.put(MetricsEvent.RESERVED_FOR_LOGBUILDER_TIMESTAMP, timestamp);
        return this;
    }

    public LogMaker clearTimestamp() {
        entries.remove(MetricsEvent.RESERVED_FOR_LOGBUILDER_TIMESTAMP);
        return this;
    }

    public LogMaker setPackageName(String packageName) {
        entries.put(MetricsEvent.RESERVED_FOR_LOGBUILDER_PACKAGENAME, packageName);
        return this;
    }

    public LogMaker clearPackageName() {
        entries.remove(MetricsEvent.RESERVED_FOR_LOGBUILDER_PACKAGENAME);
        return this;
    }

    public LogMaker setCounterName(String name) {
        entries.put(MetricsEvent.RESERVED_FOR_LOGBUILDER_NAME, name);
        return this;
+49 −0
Original line number Diff line number Diff line
@@ -122,6 +122,55 @@ public class LogMakerTest extends TestCase {
        assertEquals(null, builder.getTaggedData(1));
    }

    public void testClearFieldLeavesOtherFieldsIntact() {
        LogMaker builder = new LogMaker(0);
        builder.setPackageName("package.name");
        builder.setSubtype(10);
        builder.clearPackageName();
        assertEquals(null, builder.getPackageName());
        assertEquals(10, builder.getSubtype());
    }

    public void testSetAndClearCategory() {
        LogMaker builder = new LogMaker(0);
        builder.setCategory(MetricsEvent.MAIN_SETTINGS);
        assertEquals(MetricsEvent.MAIN_SETTINGS, builder.getCategory());
        builder.clearCategory();
        assertEquals(MetricsEvent.VIEW_UNKNOWN, builder.getCategory());
    }

    public void testSetAndClearType() {
        LogMaker builder = new LogMaker(0);
        builder.setType(MetricsEvent.TYPE_OPEN);
        assertEquals(MetricsEvent.TYPE_OPEN, builder.getType());
        builder.clearType();
        assertEquals(MetricsEvent.TYPE_UNKNOWN, builder.getType());
    }

    public void testSetAndClearSubtype() {
        LogMaker builder = new LogMaker(0);
        builder.setSubtype(1);
        assertEquals(1, builder.getSubtype());
        builder.clearSubtype();
        assertEquals(0, builder.getSubtype());
    }

    public void testSetAndClearTimestamp() {
        LogMaker builder = new LogMaker(0);
        builder.setTimestamp(1);
        assertEquals(1, builder.getTimestamp());
        builder.clearTimestamp();
        assertEquals(0, builder.getTimestamp());
    }

    public void testSetAndClearPackageName() {
        LogMaker builder = new LogMaker(0);
        builder.setPackageName("package.name");
        assertEquals("package.name", builder.getPackageName());
        builder.clearPackageName();
        assertEquals(null, builder.getPackageName());
    }

    public void testGiantLogOmitted() {
        LogMaker badBuilder = new LogMaker(0);
        StringBuilder b = new StringBuilder();
+3 −3
Original line number Diff line number Diff line
@@ -778,9 +778,9 @@ public final class NotificationRecord {
                    .addTaggedData(MetricsEvent.NOTIFICATION_TAG, sbn.getTag());
        }
        return mLogMaker
                .setCategory(MetricsEvent.VIEW_UNKNOWN)
                .setType(MetricsEvent.TYPE_UNKNOWN)
                .setSubtype(0)
                .clearCategory()
                .clearType()
                .clearSubtype()
                .clearTaggedData(MetricsEvent.NOTIFICATION_SHADE_INDEX)
                .addTaggedData(MetricsEvent.NOTIFICATION_SINCE_CREATE_MILLIS, getLifespanMs(now))
                .addTaggedData(MetricsEvent.NOTIFICATION_SINCE_UPDATE_MILLIS, getFreshnessMs(now))