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

Commit 5b3373b4 authored by Jeff DeCew's avatar Jeff DeCew
Browse files

Slightly improve performance of DumpsysTableLogger and others

Test: perfetto ; dumpsysui bugreport-critical
Bug: 292221335
Change-Id: I3f89a3e1f9136c8c0d6c0bb0751b68af0ed2fdec
parent d606d979
Loading
Loading
Loading
Loading
+8 −8
Original line number Diff line number Diff line
@@ -93,24 +93,24 @@ class DumpsysTableLogger(
    }

    private fun printSectionStart(pw: PrintWriter) {
        pw.println(HEADER_PREFIX + sectionName)
        pw.println("version $VERSION")
        pw.append(HEADER_PREFIX).println(sectionName)
        pw.append("version ").println(VERSION)
    }

    private fun printSectionEnd(pw: PrintWriter) {
        pw.println(FOOTER_PREFIX + sectionName)
        pw.append(FOOTER_PREFIX).println(sectionName)
    }

    private fun printSchema(pw: PrintWriter) {
        pw.println(columns.joinToString(separator = SEPARATOR))
        columns.joinTo(pw, separator = SEPARATOR).println()
    }

    private fun printData(pw: PrintWriter) {
        val count = columns.size
        rows
            .filter { it.size == count }
            .forEach { dataLine ->
                pw.println(dataLine.joinToString(separator = SEPARATOR))
        rows.forEach { dataLine ->
            if (dataLine.size == count) {
                dataLine.joinTo(pw, separator = SEPARATOR).println()
            }
        }
    }
}
+3 −3
Original line number Diff line number Diff line
@@ -302,14 +302,14 @@ class TableLogBuffer(

    @Synchronized
    override fun dump(pw: PrintWriter, args: Array<out String>) {
        pw.println(HEADER_PREFIX + name)
        pw.println("version $VERSION")
        pw.append(HEADER_PREFIX).println(name)
        pw.append("version ").println(VERSION)

        lastEvictedValues.values.sortedBy { it.timestamp }.forEach { it.dump(pw) }
        for (i in 0 until buffer.size) {
            buffer[i].dump(pw)
        }
        pw.println(FOOTER_PREFIX + name)
        pw.append(FOOTER_PREFIX).println(name)
    }

    /** Dumps an individual [TableChange]. */
+1 −1
Original line number Diff line number Diff line
@@ -108,7 +108,7 @@ class NPVCDownEventState private constructor(
         * @see NPVCDownEventState.asStringList
         */
        fun toList(): List<Row> {
            return buffer.asSequence().map { it.asStringList }.toList()
            return buffer.map { it.asStringList }
        }
    }

+1 −1
Original line number Diff line number Diff line
@@ -170,7 +170,7 @@ class NotificationShadeWindowState(
         * @see [NotificationShadeWindowState.asStringList]
         */
        fun toList(): List<Row> {
            return buffer.asSequence().map { it.asStringList }.toList()
            return buffer.map { it.asStringList }
        }
    }