Browse Source

Qualify total time spent on build with proper English.

PR: 5901


git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271027 13f79535-47bb-0310-9956-ffa450edef68
master
Magesh Umasankar 23 years ago
parent
commit
52f94cbb4c
1 changed files with 30 additions and 15 deletions
  1. +30
    -15
      src/main/org/apache/tools/ant/DefaultLogger.java

+ 30
- 15
src/main/org/apache/tools/ant/DefaultLogger.java View File

@@ -55,8 +55,8 @@
package org.apache.tools.ant;

import java.io.PrintStream;
import java.text.ChoiceFormat;
import java.text.MessageFormat;

import org.apache.tools.ant.util.StringUtils;

@@ -66,6 +66,28 @@ import org.apache.tools.ant.util.StringUtils;
* any messages that get logged.
*/
public class DefaultLogger implements BuildLogger {
private final static MessageFormat MINUTE_SECONDS =
new MessageFormat("Total time: {0}{1}.");

private final static double[] LIMITS = {0, 1, 2};

private final static String[] MINUTES_PART =
{"", "1 minute, ", "{0,number} minutes, "};

private final static String[] SECONDS_PART =
{"no seconds", "1 second", "{1,number} seconds"};

private final static ChoiceFormat MINUTES_FORMAT =
new ChoiceFormat(LIMITS, MINUTES_PART);

private final static ChoiceFormat SECONDS_FORMAT =
new ChoiceFormat(LIMITS, SECONDS_PART);

static {
MINUTE_SECONDS.setFormat(0, MINUTES_FORMAT);
MINUTE_SECONDS.setFormat(1, SECONDS_FORMAT);
}

private static int LEFT_COLUMN_SIZE = 12;

protected PrintStream out;
@@ -159,8 +181,7 @@ public class DefaultLogger implements BuildLogger {
}
}
message.append(StringUtils.LINE_SEP);
message.append("Total time: "
+ formatTime(System.currentTimeMillis() - startTime));
message.append(formatTime(System.currentTimeMillis() - startTime));

String msg = message.toString();
if (error == null) {
@@ -219,18 +240,12 @@ public class DefaultLogger implements BuildLogger {
long seconds = millis / 1000;
long minutes = seconds / 60;

Object[] args = {
new Long(minutes),
new Long(seconds % 60)
};

if (minutes > 0) {
return Long.toString(minutes) + " minute"
+ (minutes == 1 ? " " : "s ")
+ Long.toString(seconds%60) + " second"
+ (seconds%60 > 1 ? "s" : "");
}
else {
return Long.toString(seconds) + " second"
+ (seconds%60 > 1 ? "s" : "");
}

return MINUTE_SECONDS.format(args);
}

protected void printMessage(final String message,


Loading…
Cancel
Save