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

Commit 5db227d2 authored by Beverly's avatar Beverly Committed by Beverly Tai
Browse files

Don't store copies of notifications for logging

We only need to retain the String representation
of the event

Test: manual
Fixes: 142823448
Change-Id: I907143e5a5f87c9a561e3d23cd365243c9901ee3
parent 30f59237
Loading
Loading
Loading
Loading
+8 −30
Original line number Diff line number Diff line
@@ -27,12 +27,11 @@ import java.lang.annotation.RetentionPolicy;

/**
 * An event related to notifications. {@link NotifLog} stores and prints these events for debugging
 * and triaging purposes.
 * and triaging purposes. We do not store a copy of the status bar notification nor ranking
 * here to mitigate memory usage.
 */
public class NotifEvent extends RichEvent {
    public static final int TOTAL_EVENT_TYPES = 11;
    private final StatusBarNotification mSbn;
    private final Ranking mRanking;

    /**
     * Creates a NotifEvent with an event type that matches with an index in the array
@@ -44,34 +43,20 @@ public class NotifEvent extends RichEvent {
    public NotifEvent(int logLevel, int type, String reason, StatusBarNotification sbn,
            Ranking ranking) {
        super(logLevel, type, reason);

        if (sbn != null) {
            mSbn = sbn.cloneLight();
        } else {
            mSbn = null;
        }

        if (ranking != null) {
            mRanking = new Ranking();
            mRanking.populate(ranking);
        } else {
            mRanking = null;
        }

        mMessage += getExtraInfo();
        mMessage += getExtraInfo(sbn, ranking);
    }

    private String getExtraInfo() {
    private String getExtraInfo(StatusBarNotification sbn, Ranking ranking) {
        StringBuilder extraInfo = new StringBuilder();

        if (mSbn != null) {
        if (sbn != null) {
            extraInfo.append(" Sbn=");
            extraInfo.append(mSbn);
            extraInfo.append(sbn);
        }

        if (mRanking != null) {
        if (ranking != null) {
            extraInfo.append(" Ranking=");
            extraInfo.append(mRanking);
            extraInfo.append(ranking);
        }

        return extraInfo.toString();
@@ -106,13 +91,6 @@ public class NotifEvent extends RichEvent {
        return events;
    }

    /**
     * @return a copy of the status bar notification that changed with this event
     */
    public StatusBarNotification getSbn() {
        return mSbn;
    }

    /**
     * Builds a NotifEvent.
     */