From c603ca2dd87c7e93debca309cca234c408985bf3 Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Sat, 17 Oct 2020 21:20:13 -0600 Subject: [PATCH] Apply fixes for EfficientStrings. Refactoring to avoid StringBuffer synchronization overhead. Bug: 170978902 Test: none Exempt-From-Owner-Approval: trivial refactoring Change-Id: Ibf843ed780c1202d5d96a11eaca889e592f19263 --- core/java/android/app/NotificationChannel.java | 2 +- core/java/android/content/SyncResult.java | 2 +- core/java/android/hardware/hdmi/HdmiDeviceInfo.java | 2 +- core/java/android/hardware/hdmi/HdmiPortInfo.java | 2 +- core/java/android/os/Debug.java | 6 +++--- core/java/android/util/proto/EncodedBuffer.java | 4 ++-- services/core/java/com/android/server/NsdService.java | 2 +- .../java/com/android/server/WiredAccessoryManager.java | 2 +- .../server/display/AutomaticBrightnessController.java | 2 +- .../java/com/android/server/display/utils/History.java | 2 +- .../android/server/display/utils/RollingBuffer.java | 2 +- .../com/android/server/hdmi/HdmiCecLocalDevice.java | 2 +- .../java/com/android/server/hdmi/HdmiCecMessage.java | 2 +- .../com/android/server/input/InputShellCommand.java | 2 +- .../com/android/server/media/MediaSessionStack.java | 2 +- .../java/com/android/server/pm/PackageSignatures.java | 2 +- .../core/java/com/android/server/pm/PackageUsage.java | 10 +++++----- 17 files changed, 24 insertions(+), 24 deletions(-) diff --git a/core/java/android/app/NotificationChannel.java b/core/java/android/app/NotificationChannel.java index f0e457e9691a7..a06ffbdb43011 100644 --- a/core/java/android/app/NotificationChannel.java +++ b/core/java/android/app/NotificationChannel.java @@ -1144,7 +1144,7 @@ public final class NotificationChannel implements Parcelable { } private static String longArrayToString(long[] values) { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); if (values != null && values.length > 0) { for (int i = 0; i < values.length - 1; i++) { sb.append(values[i]).append(DELIMITER); diff --git a/core/java/android/content/SyncResult.java b/core/java/android/content/SyncResult.java index 8280f8e637bab..7e68dcafd1b5c 100644 --- a/core/java/android/content/SyncResult.java +++ b/core/java/android/content/SyncResult.java @@ -292,7 +292,7 @@ public final class SyncResult implements Parcelable { * @return debugging string. */ public String toDebugString() { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); if (fullSyncRequested) { sb.append("f1"); diff --git a/core/java/android/hardware/hdmi/HdmiDeviceInfo.java b/core/java/android/hardware/hdmi/HdmiDeviceInfo.java index 55b07268d2016..3fd20f12381e6 100644 --- a/core/java/android/hardware/hdmi/HdmiDeviceInfo.java +++ b/core/java/android/hardware/hdmi/HdmiDeviceInfo.java @@ -463,7 +463,7 @@ public class HdmiDeviceInfo implements Parcelable { @NonNull @Override public String toString() { - StringBuffer s = new StringBuffer(); + StringBuilder s = new StringBuilder(); switch (mHdmiDeviceType) { case HDMI_DEVICE_TYPE_CEC: s.append("CEC: "); diff --git a/core/java/android/hardware/hdmi/HdmiPortInfo.java b/core/java/android/hardware/hdmi/HdmiPortInfo.java index e97e120109bf8..e4b311a64c316 100644 --- a/core/java/android/hardware/hdmi/HdmiPortInfo.java +++ b/core/java/android/hardware/hdmi/HdmiPortInfo.java @@ -169,7 +169,7 @@ public final class HdmiPortInfo implements Parcelable { @NonNull @Override public String toString() { - StringBuffer s = new StringBuffer(); + StringBuilder s = new StringBuilder(); s.append("port_id: ").append(mId).append(", "); s.append("type: ").append((mType == PORT_INPUT) ? "HDMI_IN" : "HDMI_OUT").append(", "); s.append("address: ").append(String.format("0x%04x", mAddress)).append(", "); diff --git a/core/java/android/os/Debug.java b/core/java/android/os/Debug.java index a2e53e29193c7..4fed93204f593 100644 --- a/core/java/android/os/Debug.java +++ b/core/java/android/os/Debug.java @@ -2468,7 +2468,7 @@ public final class Debug @UnsupportedAppUsage public static String getCallers(final int depth) { final StackTraceElement[] callStack = Thread.currentThread().getStackTrace(); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (int i = 0; i < depth; i++) { sb.append(getCaller(callStack, i)).append(" "); } @@ -2483,7 +2483,7 @@ public final class Debug */ public static String getCallers(final int start, int depth) { final StackTraceElement[] callStack = Thread.currentThread().getStackTrace(); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); depth += start; for (int i = start; i < depth; i++) { sb.append(getCaller(callStack, i)).append(" "); @@ -2501,7 +2501,7 @@ public final class Debug */ public static String getCallers(final int depth, String linePrefix) { final StackTraceElement[] callStack = Thread.currentThread().getStackTrace(); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (int i = 0; i < depth; i++) { sb.append(linePrefix).append(getCaller(callStack, i)).append("\n"); } diff --git a/core/java/android/util/proto/EncodedBuffer.java b/core/java/android/util/proto/EncodedBuffer.java index 56a0bfa2adb1a..2a8f405ffd7f9 100644 --- a/core/java/android/util/proto/EncodedBuffer.java +++ b/core/java/android/util/proto/EncodedBuffer.java @@ -648,7 +648,7 @@ public final class EncodedBuffer { * Print the internal buffer chunks. */ private static int dumpByteString(String tag, String prefix, int start, byte[] buf) { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); final int length = buf.length; final int lineLen = 16; int i; @@ -656,7 +656,7 @@ public final class EncodedBuffer { if (i % lineLen == 0) { if (i != 0) { Log.d(tag, sb.toString()); - sb = new StringBuffer(); + sb = new StringBuilder(); } sb.append(prefix); sb.append('['); diff --git a/services/core/java/com/android/server/NsdService.java b/services/core/java/com/android/server/NsdService.java index 4a1820a8e5388..78bd4cdd4eabe 100644 --- a/services/core/java/com/android/server/NsdService.java +++ b/services/core/java/com/android/server/NsdService.java @@ -824,7 +824,7 @@ public class NsdService extends INsdManager.Stub { @Override public String toString() { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); sb.append("mChannel ").append(mChannel).append("\n"); sb.append("mMessenger ").append(mMessenger).append("\n"); sb.append("mResolvedService ").append(mResolvedService).append("\n"); diff --git a/services/core/java/com/android/server/WiredAccessoryManager.java b/services/core/java/com/android/server/WiredAccessoryManager.java index 8e5c73bfc0227..7fa93c045ce05 100644 --- a/services/core/java/com/android/server/WiredAccessoryManager.java +++ b/services/core/java/com/android/server/WiredAccessoryManager.java @@ -319,7 +319,7 @@ final class WiredAccessoryManager implements WiredAccessoryCallbacks { } private String switchCodeToString(int switchValues, int switchMask) { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); if ((switchMask & SW_HEADPHONE_INSERT_BIT) != 0 && (switchValues & SW_HEADPHONE_INSERT_BIT) != 0) { sb.append("SW_HEADPHONE_INSERT "); diff --git a/services/core/java/com/android/server/display/AutomaticBrightnessController.java b/services/core/java/com/android/server/display/AutomaticBrightnessController.java index 93cada7adca3c..eb61a1c2ad40c 100644 --- a/services/core/java/com/android/server/display/AutomaticBrightnessController.java +++ b/services/core/java/com/android/server/display/AutomaticBrightnessController.java @@ -1051,7 +1051,7 @@ class AutomaticBrightnessController { @Override public String toString() { - StringBuffer buf = new StringBuffer(); + StringBuilder buf = new StringBuilder(); buf.append('['); for (int i = 0; i < mCount; i++) { final long next = i + 1 < mCount ? getTime(i + 1) : SystemClock.uptimeMillis(); diff --git a/services/core/java/com/android/server/display/utils/History.java b/services/core/java/com/android/server/display/utils/History.java index ed171b8f74080..988d573f276d3 100644 --- a/services/core/java/com/android/server/display/utils/History.java +++ b/services/core/java/com/android/server/display/utils/History.java @@ -83,7 +83,7 @@ public class History { * @return The buffer as string. */ public String toString() { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); sb.append("["); for (int i = 0; i < mCount; i++) { final int index = (mStart + i) % mSize; diff --git a/services/core/java/com/android/server/display/utils/RollingBuffer.java b/services/core/java/com/android/server/display/utils/RollingBuffer.java index dd5b7ab2403d3..883f6eb4fb7d9 100644 --- a/services/core/java/com/android/server/display/utils/RollingBuffer.java +++ b/services/core/java/com/android/server/display/utils/RollingBuffer.java @@ -136,7 +136,7 @@ public class RollingBuffer { * @return The buffer as string. */ public String toString() { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); sb.append("["); for (int i = 0; i < mCount; i++) { final int index = offsetOf(i); diff --git a/services/core/java/com/android/server/hdmi/HdmiCecLocalDevice.java b/services/core/java/com/android/server/hdmi/HdmiCecLocalDevice.java index b88a37e7b8b44..946fb0d00d60b 100755 --- a/services/core/java/com/android/server/hdmi/HdmiCecLocalDevice.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecLocalDevice.java @@ -127,7 +127,7 @@ abstract class HdmiCecLocalDevice { @Override public String toString() { - StringBuffer s = new StringBuffer(); + StringBuilder s = new StringBuilder(); String logicalAddressString = (logicalAddress == Constants.ADDR_INVALID) ? "invalid" diff --git a/services/core/java/com/android/server/hdmi/HdmiCecMessage.java b/services/core/java/com/android/server/hdmi/HdmiCecMessage.java index ff7da11340ebc..7a6ce8de8c24c 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecMessage.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecMessage.java @@ -111,7 +111,7 @@ public final class HdmiCecMessage { @Override public String toString() { - StringBuffer s = new StringBuffer(); + StringBuilder s = new StringBuilder(); s.append(String.format("<%s> %X%X:%02X", opcodeToString(mOpcode), mSource, mDestination, mOpcode)); if (mParams.length > 0) { diff --git a/services/core/java/com/android/server/input/InputShellCommand.java b/services/core/java/com/android/server/input/InputShellCommand.java index fd5f48c918674..51e6cf413074c 100644 --- a/services/core/java/com/android/server/input/InputShellCommand.java +++ b/services/core/java/com/android/server/input/InputShellCommand.java @@ -215,7 +215,7 @@ public class InputShellCommand extends ShellCommand { * @param text is a string of characters you want to input to the device. */ private void sendText(int source, final String text, int displayId) { - final StringBuffer buff = new StringBuffer(text); + final StringBuilder buff = new StringBuilder(text); boolean escapeFlag = false; for (int i = 0; i < buff.length(); i++) { if (escapeFlag) { diff --git a/services/core/java/com/android/server/media/MediaSessionStack.java b/services/core/java/com/android/server/media/MediaSessionStack.java index f15e22f92cade..f8ff5b5f8e664 100644 --- a/services/core/java/com/android/server/media/MediaSessionStack.java +++ b/services/core/java/com/android/server/media/MediaSessionStack.java @@ -416,7 +416,7 @@ class MediaSessionStack { // Code copied from android.os.Debug#getCallers(int) private static String getCallers(final int depth) { final StackTraceElement[] callStack = Thread.currentThread().getStackTrace(); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (int i = 0; i < depth; i++) { sb.append(getCaller(callStack, i)).append(" "); } diff --git a/services/core/java/com/android/server/pm/PackageSignatures.java b/services/core/java/com/android/server/pm/PackageSignatures.java index 6bce78862087c..b7d1eec68c7a7 100644 --- a/services/core/java/com/android/server/pm/PackageSignatures.java +++ b/services/core/java/com/android/server/pm/PackageSignatures.java @@ -309,7 +309,7 @@ class PackageSignatures { @Override public String toString() { - StringBuffer buf = new StringBuffer(128); + StringBuilder buf = new StringBuilder(128); buf.append("PackageSignatures{"); buf.append(Integer.toHexString(System.identityHashCode(this))); buf.append(" version:"); diff --git a/services/core/java/com/android/server/pm/PackageUsage.java b/services/core/java/com/android/server/pm/PackageUsage.java index ef37a20479d69..ec8977988e3f2 100644 --- a/services/core/java/com/android/server/pm/PackageUsage.java +++ b/services/core/java/com/android/server/pm/PackageUsage.java @@ -97,7 +97,7 @@ class PackageUsage extends AbstractStatsBase> { BufferedInputStream in = null; try { in = new BufferedInputStream(file.openRead()); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); String firstLine = readLine(in, sb); if (firstLine == null) { @@ -117,7 +117,7 @@ class PackageUsage extends AbstractStatsBase> { } private void readVersion0LP(Map pkgSettings, InputStream in, - StringBuffer sb, String firstLine) + StringBuilder sb, String firstLine) throws IOException { // Initial version of the file had no version number and stored one // package-timestamp pair per line. @@ -145,7 +145,7 @@ class PackageUsage extends AbstractStatsBase> { } private void readVersion1LP(Map pkgSettings, InputStream in, - StringBuffer sb) throws IOException { + StringBuilder sb) throws IOException { // Version 1 of the file started with the corresponding version // number and then stored a package name and eight timestamps per line. String line; @@ -178,11 +178,11 @@ class PackageUsage extends AbstractStatsBase> { } } - private String readLine(InputStream in, StringBuffer sb) throws IOException { + private String readLine(InputStream in, StringBuilder sb) throws IOException { return readToken(in, sb, '\n'); } - private String readToken(InputStream in, StringBuffer sb, char endOfToken) + private String readToken(InputStream in, StringBuilder sb, char endOfToken) throws IOException { sb.setLength(0); while (true) {