summaryrefslogtreecommitdiffstats
path: root/graphics/java/android/graphics/Rect.java
diff options
context:
space:
mode:
authorDianne Hackborn <hackbod@google.com>2009-04-20 18:14:05 -0700
committerDianne Hackborn <hackbod@google.com>2009-04-22 18:03:21 -0700
commit1d442e0d990b581357f33f5463c7c5cb49b551e8 (patch)
tree58963b9ba095e179ba7c63e52dfd525b93cb978e /graphics/java/android/graphics/Rect.java
parenta0c9e8526b094e3b4f2c2747622059215d00516f (diff)
downloadframeworks_base-1d442e0d990b581357f33f5463c7c5cb49b551e8.zip
frameworks_base-1d442e0d990b581357f33f5463c7c5cb49b551e8.tar.gz
frameworks_base-1d442e0d990b581357f33f5463c7c5cb49b551e8.tar.bz2
More optimization of dumpsys output.
There are three major classes of changes here: - Avoid writing lines where their values are often empty, false, or some other typical thing. - Use partial writes to the PrintWriter to avoid creating temporary strings. - Use StringBuilder where we need to generate real String objects (and where possible cache the result).
Diffstat (limited to 'graphics/java/android/graphics/Rect.java')
-rw-r--r--graphics/java/android/graphics/Rect.java32
1 files changed, 30 insertions, 2 deletions
diff --git a/graphics/java/android/graphics/Rect.java b/graphics/java/android/graphics/Rect.java
index 2005344..7022acf 100644
--- a/graphics/java/android/graphics/Rect.java
+++ b/graphics/java/android/graphics/Rect.java
@@ -19,6 +19,8 @@ package android.graphics;
import android.os.Parcel;
import android.os.Parcelable;
+import java.io.PrintWriter;
+
/**
* Rect holds four integer coordinates for a rectangle. The rectangle is
* represented by the coordinates of its 4 edges (left, top, right bottom).
@@ -78,14 +80,40 @@ public final class Rect implements Parcelable {
}
public String toString() {
- return "Rect(" + left + ", " + top + " - " + right + ", " + bottom + ")";
+ StringBuilder sb = new StringBuilder(32);
+ sb.append("Rect("); sb.append(left); sb.append(", ");
+ sb.append(top); sb.append(" - "); sb.append(right);
+ sb.append(", "); sb.append(bottom); sb.append(")");
+ return sb.toString();
}
/**
* Return a string representation of the rectangle in a compact form.
*/
public String toShortString() {
- return "[" + left + "," + top + "][" + right + "," + bottom + "]";
+ return toShortString(new StringBuilder(32));
+ }
+
+ /**
+ * Return a string representation of the rectangle in a compact form.
+ * @hide
+ */
+ public String toShortString(StringBuilder sb) {
+ sb.setLength(0);
+ sb.append('['); sb.append(left); sb.append(',');
+ sb.append(top); sb.append("]["); sb.append(right);
+ sb.append(','); sb.append(bottom); sb.append(']');
+ return sb.toString();
+ }
+
+ /**
+ * Print short representation to given writer.
+ * @hide
+ */
+ public void printShortString(PrintWriter pw) {
+ pw.print('['); pw.print(left); pw.print(',');
+ pw.print(top); pw.print("]["); pw.print(right);
+ pw.print(','); pw.print(bottom); pw.print(']');
}
/**