You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by mi...@apache.org on 2017/05/10 12:12:11 UTC

logging-log4j2 git commit: Make Timer implement StringBuilderFormattable

Repository: logging-log4j2
Updated Branches:
  refs/heads/master 95a8c4fa7 -> 68e43b84d


Make Timer implement StringBuilderFormattable


Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/68e43b84
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/68e43b84
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/68e43b84

Branch: refs/heads/master
Commit: 68e43b84d8705cb6ff2bbcc999ae7e1f2665e5d9
Parents: 95a8c4f
Author: Mikael Ståldal <mi...@magine.com>
Authored: Wed May 10 14:12:05 2017 +0200
Committer: Mikael Ståldal <mi...@magine.com>
Committed: Wed May 10 14:12:05 2017 +0200

----------------------------------------------------------------------
 .../java/org/apache/logging/log4j/Timer.java    | 25 +++++++++++++-------
 1 file changed, 16 insertions(+), 9 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/68e43b84/log4j-api/src/test/java/org/apache/logging/log4j/Timer.java
----------------------------------------------------------------------
diff --git a/log4j-api/src/test/java/org/apache/logging/log4j/Timer.java b/log4j-api/src/test/java/org/apache/logging/log4j/Timer.java
index cca30b5..2a4780a 100644
--- a/log4j-api/src/test/java/org/apache/logging/log4j/Timer.java
+++ b/log4j-api/src/test/java/org/apache/logging/log4j/Timer.java
@@ -19,12 +19,13 @@ package org.apache.logging.log4j;
 import java.io.Serializable;
 import java.text.DecimalFormat;
 
+import org.apache.logging.log4j.util.StringBuilderFormattable;
 import org.apache.logging.log4j.util.Strings;
 
 /**
  *
  */
-public class Timer implements Serializable
+public class Timer implements Serializable, StringBuilderFormattable
 {
     private static final long serialVersionUID = 9175191792439630013L;
 
@@ -144,16 +145,23 @@ public class Timer implements Serializable
     @Override
     public String toString()
     {
-        final StringBuilder result = new StringBuilder("Timer ").append(name);
+        final StringBuilder result = new StringBuilder();
+        formatTo(result);
+        return result.toString();
+    }
+
+    @Override
+    public void formatTo(StringBuilder buffer) {
+        buffer.append("Timer ").append(name);
         switch (status) {
             case "Start":
-                result.append(" started");
+                buffer.append(" started");
                 break;
             case "Pause":
-                result.append(" paused");
+                buffer.append(" paused");
                 break;
             case "Resume":
-                result.append(" resumed");
+                buffer.append(" resumed");
                 break;
             case "Stop":
                 long nanoseconds = elapsedTime;
@@ -184,7 +192,7 @@ public class Timer implements Serializable
                 elapsed += numFormat.format(seconds) + '.';
                 numFormat = new DecimalFormat("000000000");
                 elapsed += numFormat.format(nanoseconds) + " seconds";
-                result.append(" stopped. Elapsed time: ").append(elapsed);
+                buffer.append(" stopped. Elapsed time: ").append(elapsed);
                 if (iterations > 0) {
                     nanoseconds = elapsedTime / iterations;
                     // Get elapsed hours
@@ -213,14 +221,13 @@ public class Timer implements Serializable
                     elapsed += numFormat.format(seconds) + '.';
                     numFormat = new DecimalFormat("000000000");
                     elapsed += numFormat.format(nanoseconds) + " seconds";
-                    result.append(" Average per iteration: ").append(elapsed);
+                    buffer.append(" Average per iteration: ").append(elapsed);
                 }
                 break;
             default:
-                result.append(' ').append(status);
+                buffer.append(' ').append(status);
                 break;
         }
-        return result.toString();
     }
 
     @Override