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

Commit 24257d57 authored by Ned Burns's avatar Ned Burns Committed by Android (Google) Code Review
Browse files

Merge "Ignore missing rankings in GroupCoalescer" into rvc-dev

parents b1e30270 168a8165
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -260,11 +260,14 @@ public class GroupCoalescer implements Dumpable {
    private void applyRanking(RankingMap rankingMap) {
        for (CoalescedEvent event : mCoalescedEvents.values()) {
            Ranking ranking = new Ranking();
            if (!rankingMap.getRanking(event.getKey(), ranking)) {
                throw new IllegalStateException(
                        "Ranking map doesn't contain key: " + event.getKey());
            }
            if (rankingMap.getRanking(event.getKey(), ranking)) {
                event.setRanking(ranking);
            } else {
                // TODO: (b/148791039) We should crash if we are ever handed a ranking with
                //  incomplete entries. Right now, there's a race condition in NotificationListener
                //  that means this might occur when SystemUI is starting up.
                mLogger.logMissingRanking(event.getKey());
            }
        }
    }

+8 −0
Original line number Diff line number Diff line
@@ -57,6 +57,14 @@ class GroupCoalescerLogger @Inject constructor(
            "Modification of notif $str1 triggered TIMEOUT emit of batched group $str2"
        })
    }

    fun logMissingRanking(forKey: String) {
        buffer.log(TAG, LogLevel.WARNING, {
            str1 = forKey
        }, {
            "RankingMap is missing an entry for coalesced notification $str1"
        })
    }
}

private const val TAG = "GroupCoalescer"
 No newline at end of file