From 86c85ae92b487680b8afcfc9d953dbccd28327b7 Mon Sep 17 00:00:00 2001 From: snowleo Date: Wed, 14 Mar 2012 03:50:49 +0100 Subject: ExecuteTimer is a Util --- .../src/com/earth2me/essentials/Essentials.java | 1 + .../src/com/earth2me/essentials/ExecuteTimer.java | 89 ---------------------- .../earth2me/essentials/utils/ExecuteTimer.java | 89 ++++++++++++++++++++++ .../test/com/earth2me/essentials/StorageTest.java | 1 + 4 files changed, 91 insertions(+), 89 deletions(-) delete mode 100644 Essentials/src/com/earth2me/essentials/ExecuteTimer.java create mode 100644 Essentials/src/com/earth2me/essentials/utils/ExecuteTimer.java diff --git a/Essentials/src/com/earth2me/essentials/Essentials.java b/Essentials/src/com/earth2me/essentials/Essentials.java index 002e7e2ab..2cea1993c 100644 --- a/Essentials/src/com/earth2me/essentials/Essentials.java +++ b/Essentials/src/com/earth2me/essentials/Essentials.java @@ -17,6 +17,7 @@ */ package com.earth2me.essentials; +import com.earth2me.essentials.utils.ExecuteTimer; import com.earth2me.essentials.economy.WorthHolder; import com.earth2me.essentials.economy.Economy; import com.earth2me.essentials.backup.Backup; diff --git a/Essentials/src/com/earth2me/essentials/ExecuteTimer.java b/Essentials/src/com/earth2me/essentials/ExecuteTimer.java deleted file mode 100644 index 301669428..000000000 --- a/Essentials/src/com/earth2me/essentials/ExecuteTimer.java +++ /dev/null @@ -1,89 +0,0 @@ -package com.earth2me.essentials; - -import java.text.DecimalFormat; -import java.text.DecimalFormatSymbols; -import java.util.ArrayList; -import java.util.List; -import java.util.Locale; - - -public class ExecuteTimer -{ - private final transient List times; - private final transient DecimalFormat decimalFormat = new DecimalFormat("#0.000", DecimalFormatSymbols.getInstance(Locale.US)); - - - public ExecuteTimer() - { - times = new ArrayList(); - } - - public void start() - { - times.clear(); - mark("start"); - - } - - public void mark(final String label) - { - if (!times.isEmpty() || "start".equals(label)) - { - times.add(new ExecuteRecord(label, System.nanoTime())); - } - } - - public String end() - { - final StringBuilder output = new StringBuilder(); - output.append("execution time: "); - String mark; - long time0 = 0; - long time1 = 0; - long time2 = 0; - double duration; - - for (ExecuteRecord pair : times) - { - mark = (String)pair.getMark(); - time2 = (Long)pair.getTime(); - if (time1 > 0) - { - duration = (time2 - time1)/1000000.0; - output.append(mark).append(": ").append(decimalFormat.format(duration)).append("ms - "); - } - else - { - time0 = time2; - } - time1 = time2; - } - duration = (time1 - time0)/1000000.0; - output.append("Total: ").append(decimalFormat.format(duration)).append("ms"); - times.clear(); - return output.toString(); - } - - - static private class ExecuteRecord - { - private final String mark; - private final long time; - - public ExecuteRecord(final String mark, final long time) - { - this.mark = mark; - this.time = time; - } - - public String getMark() - { - return mark; - } - - public long getTime() - { - return time; - } - } -} \ No newline at end of file diff --git a/Essentials/src/com/earth2me/essentials/utils/ExecuteTimer.java b/Essentials/src/com/earth2me/essentials/utils/ExecuteTimer.java new file mode 100644 index 000000000..9c8d71992 --- /dev/null +++ b/Essentials/src/com/earth2me/essentials/utils/ExecuteTimer.java @@ -0,0 +1,89 @@ +package com.earth2me.essentials.utils; + +import java.text.DecimalFormat; +import java.text.DecimalFormatSymbols; +import java.util.ArrayList; +import java.util.List; +import java.util.Locale; + + +public class ExecuteTimer +{ + private final transient List times; + private final transient DecimalFormat decimalFormat = new DecimalFormat("#0.000", DecimalFormatSymbols.getInstance(Locale.US)); + + + public ExecuteTimer() + { + times = new ArrayList(); + } + + public void start() + { + times.clear(); + mark("start"); + + } + + public void mark(final String label) + { + if (!times.isEmpty() || "start".equals(label)) + { + times.add(new ExecuteRecord(label, System.nanoTime())); + } + } + + public String end() + { + final StringBuilder output = new StringBuilder(); + output.append("execution time: "); + String mark; + long time0 = 0; + long time1 = 0; + long time2 = 0; + double duration; + + for (ExecuteRecord pair : times) + { + mark = (String)pair.getMark(); + time2 = (Long)pair.getTime(); + if (time1 > 0) + { + duration = (time2 - time1)/1000000.0; + output.append(mark).append(": ").append(decimalFormat.format(duration)).append("ms - "); + } + else + { + time0 = time2; + } + time1 = time2; + } + duration = (time1 - time0)/1000000.0; + output.append("Total: ").append(decimalFormat.format(duration)).append("ms"); + times.clear(); + return output.toString(); + } + + + static private class ExecuteRecord + { + private final String mark; + private final long time; + + public ExecuteRecord(final String mark, final long time) + { + this.mark = mark; + this.time = time; + } + + public String getMark() + { + return mark; + } + + public long getTime() + { + return time; + } + } +} \ No newline at end of file diff --git a/Essentials/test/com/earth2me/essentials/StorageTest.java b/Essentials/test/com/earth2me/essentials/StorageTest.java index 21dc51b55..5a5e12250 100644 --- a/Essentials/test/com/earth2me/essentials/StorageTest.java +++ b/Essentials/test/com/earth2me/essentials/StorageTest.java @@ -1,5 +1,6 @@ package com.earth2me.essentials; +import com.earth2me.essentials.utils.ExecuteTimer; import com.earth2me.essentials.settings.Settings; import com.earth2me.essentials.storage.ObjectLoadException; import com.earth2me.essentials.storage.StorageObject; -- cgit v1.2.3