private static String formatDuration()

in gshell-support/gshell-chronos/src/main/java/org/apache/geronimo/gshell/chronos/DurationFormatUtils.java [41:71]


    private static String formatDuration(long durationMillis, String format, boolean padWithZeros) {
        Token[] tokens = lexx(format);

        int days         = 0;
        int hours        = 0;
        int minutes      = 0;
        int seconds      = 0;
        int milliseconds = 0;

        if (Token.containsTokenWithValue(tokens, d) ) {
            days = (int) (durationMillis / DateUtils_MILLIS_PER_DAY);
            durationMillis = durationMillis - (days * DateUtils_MILLIS_PER_DAY);
        }
        if (Token.containsTokenWithValue(tokens, H) ) {
            hours = (int) (durationMillis / DateUtils_MILLIS_PER_HOUR);
            durationMillis = durationMillis - (hours * DateUtils_MILLIS_PER_HOUR);
        }
        if (Token.containsTokenWithValue(tokens, m) ) {
            minutes = (int) (durationMillis / DateUtils_MILLIS_PER_MINUTE);
            durationMillis = durationMillis - (minutes * DateUtils_MILLIS_PER_MINUTE);
        }
        if (Token.containsTokenWithValue(tokens, s) ) {
            seconds = (int) (durationMillis / DateUtils_MILLIS_PER_SECOND);
            durationMillis = durationMillis - (seconds * DateUtils_MILLIS_PER_SECOND);
        }
        if (Token.containsTokenWithValue(tokens, S) ) {
            milliseconds = (int) durationMillis;
        }

        return format(tokens, 0, 0, days, hours, minutes, seconds, milliseconds, padWithZeros);
    }