From a1d3e4c209afa143e6199546f86ef4e835637d82 Mon Sep 17 00:00:00 2001 From: Julia Tuttle Date: Mon, 6 Jun 2022 14:02:43 -0400 Subject: [PATCH] New Pipeline: log structure in dumpsys Backport the final version from master Bug: 243819288 Bug: 240299368 Test: manual Merged-In: I774c444deae8a215921a80946d1d82cf2ad128bf (cherry picked from commit ef94fc2fc36e19af784c620168fa4a95055f0ba6) Change-Id: Ib91073c5af4db6c1374b03848708ddbd4650bcf0 --- .../notification/collection/PipelineDumper.kt | 19 +++++++++---------- .../collection/render/RenderStageManager.kt | 8 ++++---- 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/PipelineDumper.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/PipelineDumper.kt index a10c745230151..0bcd3e42c1ac6 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/PipelineDumper.kt +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/PipelineDumper.kt @@ -26,10 +26,7 @@ import java.io.PrintWriter class PipelineDumper(pw: PrintWriter) { private val ipw = pw.asIndenting() - fun print(a: Any?) = ipw.print(a) fun println(a: Any?) = ipw.println(a) - fun withIncreasedIndent(b: () -> Unit) = ipw.withIncreasedIndent(b) - fun withIncreasedIndent(r: Runnable) = ipw.withIncreasedIndent(r) fun dump(label: String, value: Any?) { ipw.print("$label: ") @@ -37,24 +34,26 @@ class PipelineDumper(pw: PrintWriter) { } private fun dump(value: Any?) = when (value) { - null, is String, is Int -> println(value) + null, is String, is Int -> ipw.println(value) is Collection<*> -> dumpCollection(value) else -> { - println(value.fullPipelineName) - withIncreasedIndent { (value as? PipelineDumpable)?.dumpPipeline(this) } + ipw.println(value.fullPipelineName) + (value as? PipelineDumpable)?.let { + ipw.withIncreasedIndent { it.dumpPipeline(this) } + } } } private fun dumpCollection(values: Collection) { - println(values.size) - withIncreasedIndent { values.forEach { dump(it) } } + ipw.println(values.size) + ipw.withIncreasedIndent { values.forEach { dump(it) } } } } private val Any.bareClassName: String get() { val className = javaClass.name - val packageName = javaClass.`package`.name - return className.substring(packageName.length + 1) + val packagePrefixLength = javaClass.`package`?.name?.length?.plus(1) ?: 0 + return className.substring(packagePrefixLength) } private val Any.barePipelineName: String? get() = when (this) { diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/RenderStageManager.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/RenderStageManager.kt index 7a37846ac97bc..3061522e87dd0 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/RenderStageManager.kt +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/collection/render/RenderStageManager.kt @@ -78,10 +78,10 @@ class RenderStageManager @Inject constructor() : PipelineDumpable { } override fun dumpPipeline(d: PipelineDumper) = with(d) { - dump("ViewRenderer", viewRenderer) - dump("OnAfterRenderListListeners", onAfterRenderListListeners) - dump("OnAfterRenderGroupListeners", onAfterRenderGroupListeners) - dump("OnAfterRenderEntryListeners", onAfterRenderEntryListeners) + dump("viewRenderer", viewRenderer) + dump("onAfterRenderListListeners", onAfterRenderListListeners) + dump("onAfterRenderGroupListeners", onAfterRenderGroupListeners) + dump("onAfterRenderEntryListeners", onAfterRenderEntryListeners) } private fun dispatchOnAfterRenderList(