Example usage for org.apache.commons.lang.time DateUtils MILLIS_PER_HOUR

List of usage examples for org.apache.commons.lang.time DateUtils MILLIS_PER_HOUR

Introduction

In this page you can find the example usage for org.apache.commons.lang.time DateUtils MILLIS_PER_HOUR.

Prototype

long MILLIS_PER_HOUR

To view the source code for org.apache.commons.lang.time DateUtils MILLIS_PER_HOUR.

Click Source Link

Document

Number of milliseconds in a standard hour.

Usage

From source file:org.sipfoundry.sipxconfig.admin.CronScheduleTest.java

public void testHourly() {
    CronSchedule schedule = new CronSchedule();

    Calendar calendar = Calendar.getInstance();
    calendar.add(Calendar.MINUTE, 10);

    schedule.setType(CronSchedule.Type.HOURLY);

    schedule.setMin(calendar.get(Calendar.MINUTE));

    assertEquals(DateUtils.MILLIS_PER_HOUR, schedule.getDelay());

    calendar = DateUtils.round(calendar, Calendar.MINUTE);

    assertEquals(calendar.getTime(), schedule.getFirstDate());
}

From source file:org.sipfoundry.sipxconfig.components.MillisDurationFormatTest.java

public void testFormat() {
    m_format.setLocale(Locale.US);
    assertEquals("0 days, 0 hours, 0 minutes, 1 second", m_format.format(new Long(1000)));

    assertEquals("0 days, 0 hours, 0 minutes, 5 seconds", m_format.format(new Long(5000)));
    assertEquals("0 days, 0 hours, 0 minutes, 6 seconds", m_format.format(new Long(5999)));

    assertEquals("0 days, 0 hours, 1 minute, 5 seconds", m_format.format(new Long(60000 + 5000)));

    assertEquals("0 days, 0 hours, 2 minutes, 0 seconds", m_format.format(new Long(2 * 60000)));

    assertEquals("0 days, 0 hours, 2 minutes, 5 seconds", m_format.format(new Long(2 * 60000 + 5000)));

    assertEquals("0 days, 3 hours, 0 minutes, 6 seconds",
            m_format.format(new Long(3 * DateUtils.MILLIS_PER_HOUR + 5050)));
    assertEquals("5 days, 0 hours, 1 minute, 8 seconds",
            m_format.format(new Long(5 * DateUtils.MILLIS_PER_DAY + DateUtils.MILLIS_PER_MINUTE + 7070)));
}

From source file:org.sipfoundry.sipxconfig.components.MillisDurationFormatTest.java

public void testFormatPolish() {
    m_format.setLocale(new Locale("pl", "PL", ""));
    assertEquals("0 dni, 0 godzin, 0 minut, 1 sekunda", m_format.format(new Long(1000)));

    assertEquals("0 dni, 0 godzin, 0 minut, 5 sekund", m_format.format(new Long(5000)));
    assertEquals("0 dni, 0 godzin, 0 minut, 6 sekund", m_format.format(new Long(5999)));

    assertEquals("0 dni, 0 godzin, 1 minuta, 4 sekundy", m_format.format(new Long(60000 + 4000)));
    assertEquals("0 dni, 0 godzin, 1 minuta, 5 sekund", m_format.format(new Long(60000 + 5000)));

    assertEquals("0 dni, 0 godzin, 2 minuty, 0 sekund", m_format.format(new Long(2 * 60000)));

    assertEquals("0 dni, 0 godzin, 2 minuty, 5 sekund", m_format.format(new Long(2 * 60000 + 5000)));

    assertEquals("0 dni, 3 godziny, 0 minut, 6 sekund",
            m_format.format(new Long(3 * DateUtils.MILLIS_PER_HOUR + 5050)));
    assertEquals("5 dni, 0 godzin, 1 minuta, 8 sekund",
            m_format.format(new Long(5 * DateUtils.MILLIS_PER_DAY + DateUtils.MILLIS_PER_MINUTE + 7070)));

    m_format.setMaxField(MillisDurationFormat.SECONDS);
    assertEquals("1 sekunda", m_format.format(new Long(1000)));

}

From source file:org.sipfoundry.sipxconfig.components.MillisDurationFormatTest.java

public void testFormatSeconds() {
    m_format.setLocale(Locale.US);
    m_format.setMaxField(MillisDurationFormat.SECONDS);
    assertEquals("", m_format.format(new Long(0)));
    assertEquals("", m_format.format(new Long(1)));
    assertEquals("", m_format.format(new Long(999)));
    assertEquals("1 second", m_format.format(new Long(1000)));

    assertEquals("5 seconds", m_format.format(new Long(5000)));
    assertEquals("6 seconds", m_format.format(new Long(5999)));

    assertEquals("65 seconds", m_format.format(new Long(60000 + 5000)));

    assertEquals("10,806 seconds", m_format.format(new Long(3 * DateUtils.MILLIS_PER_HOUR + 5050)));
    assertEquals("432,068 seconds",
            m_format.format(new Long(5 * DateUtils.MILLIS_PER_DAY + DateUtils.MILLIS_PER_MINUTE + 7070)));
}

From source file:org.sipfoundry.sipxconfig.components.MillisDurationFormatTest.java

public void testFormatNoLabels() {
    m_format.setMaxField(MillisDurationFormat.SECONDS);
    assertEquals("", m_format.format(new Long(0)));
    assertEquals("01", m_format.format(new Long(1000)));

    assertEquals("05", m_format.format(new Long(5000)));
    assertEquals("06", m_format.format(new Long(5999)));

    assertEquals("65", m_format.format(new Long(60000 + 5000)));

    assertEquals("10,806", m_format.format(new Long(3 * DateUtils.MILLIS_PER_HOUR + 5050)));
    assertEquals("432,068",
            m_format.format(new Long(5 * DateUtils.MILLIS_PER_DAY + DateUtils.MILLIS_PER_MINUTE + 7070)));
}

From source file:org.sipfoundry.sipxconfig.components.MillisDurationFormatTest.java

public void testFormatSeparator() {
    m_format.setMaxField(MillisDurationFormat.HOURS);
    m_format.setSeparator(":");
    assertEquals("", m_format.format(new Long(0)));
    assertEquals("03:00:06", m_format.format(new Long(3 * DateUtils.MILLIS_PER_HOUR + 5050)));
    assertEquals("03:01:00", m_format.format(new Long(3 * DateUtils.MILLIS_PER_HOUR + 59050)));
}

From source file:org.vpac.ndg.storage.util.TimeSliceUtil.java

/**
 * Find appropriate units for the time dimension.
 * //from  w ww  . ja va2s  .co  m
 * @param timeSlices
 *            The time slices to find a unit for.
 * @param dates
 *            A list of coordinates in the new units, which map 1:1 to the
 *            given time slices. This should be an empty list; it will be
 *            populated by this method.
 * @return A description the new units.
 */
public CalendarDateUnit computeTimeMapping(List<TimeSlice> timeSlices, List<CalendarDate> dates) {

    // We need to know the smallest precision of the selected time slices,
    // so that a sensible value can be used in the exported NCML: the
    // coordinates will use units like "Days since 2011-01-01". See:
    // http://www.unidata.ucar.edu/software/netcdf/docs/BestPractices.html#Calendar%20Date/Time
    // http://www.unidata.ucar.edu/software/netcdf/time/recs.html

    Date mindate = null;
    long minprecision = Long.MAX_VALUE;
    for (TimeSlice ts : timeSlices) {
        if (mindate == null || ts.getCreated().before(mindate))
            mindate = ts.getCreated();
        Dataset ds = timeSliceDao.getParentDataset(ts.getId());
        if (minprecision == Long.MAX_VALUE || ds.getPrecision() < minprecision)
            minprecision = ds.getPrecision();
    }

    // Find an epoch: truncate the date to the nearest sensible major value,
    // e.g. to the nearest year.
    Date epoch;
    String timeUnits;

    if (minprecision < DateUtils.MILLIS_PER_SECOND) {
        // Precision of less than one second; round to milliseconds.
        epoch = DateUtils.truncate(mindate, Calendar.SECOND);
        timeUnits = String.format("msec since %s", DateFormatUtils.format(epoch, Default.SECOND_PATTERN));

    } else if (minprecision < DateUtils.MILLIS_PER_MINUTE) {
        // Precision of less than one minute; round to seconds.
        epoch = DateUtils.truncate(mindate, Calendar.MINUTE);
        timeUnits = String.format("Seconds since %s", DateFormatUtils.format(epoch, Default.MINUTE_PATTERN));

    } else if (minprecision < DateUtils.MILLIS_PER_HOUR) {
        // Precision of less than one hour; round to minutes.
        epoch = DateUtils.truncate(mindate, Calendar.HOUR);
        timeUnits = String.format("Minutes since %s", DateFormatUtils.format(epoch, Default.HOUR_PATTERN));

    } else if (minprecision < DateUtils.MILLIS_PER_DAY) {
        // Precision of less than one day; round to hours.
        epoch = DateUtils.truncate(mindate, Calendar.DAY_OF_MONTH);
        timeUnits = String.format("Hours since %s", DateFormatUtils.format(epoch, Default.DAY_PATTERN));

    } else {
        // Precision GREATER than one day; round to days.
        epoch = DateUtils.truncate(mindate, Calendar.YEAR);
        timeUnits = String.format("Days since %s", DateFormatUtils.format(epoch, Default.DAY_PATTERN));
    }

    CalendarDateUnit units = CalendarDateUnit.of("proleptic_gregorian", timeUnits);

    // Calculate a set of new coordinates for each time slice, relative to
    // the epoch.
    for (TimeSlice ts : timeSlices) {
        CalendarDate coordinate = CalendarDate.of(ts.getCreated().getTime());
        dates.add(coordinate);
    }

    return units;
}

From source file:org.vpac.ndg.Utils.java

public static long parseTemporalPrecision(String precision) throws IllegalArgumentException {

    Matcher m;/*from ww w. j a  va2s  .  c om*/
    m = TIME_PATTERN_SI.matcher(precision);
    if (m.matches()) {
        String number = m.group(1);
        String units = m.group(2);
        long n = Long.parseLong(number);

        switch (units) {
        case "":
        case "ms":
        case "millisecond":
        case "milliseconds":
            return n;
        case "s":
        case "second":
        case "seconds":
            return n * DateUtils.MILLIS_PER_SECOND;
        case "m":
        case "minute":
        case "minutes":
            return n * DateUtils.MILLIS_PER_MINUTE;
        case "h":
        case "hour":
        case "hours":
            return n * DateUtils.MILLIS_PER_HOUR;
        case "d":
        case "day":
        case "days":
            return n * DateUtils.MILLIS_PER_DAY;
        case "week":
        case "weeks":
            return n * DateUtils.MILLIS_PER_DAY * 7;
        case "month":
        case "months":
            // http://en.wikipedia.org/wiki/Month#Synodic_month
            return n * 2551442890l;
        case "a":
        case "y":
        case "year":
        case "years":
            // 365.25 days
            return n * DateUtils.MILLIS_PER_SECOND * 31557600;
        }
    }

    throw new IllegalArgumentException(String.format("Could not parse precision \"%s\".", precision));
}

From source file:phex.gui.dialogs.security.SecurityRuleDialog.java

private void initAfterExpiryDateContent(ExpiryDate expiryDate) {
    long time = expiryDate.getTime();
    long currentTime = System.currentTimeMillis();
    long timeDiff = time - currentTime;
    int days;/*www .  j  a  v  a 2 s  .co  m*/
    int hours;
    int minutes;
    if (timeDiff <= 0) {
        days = 0;
        hours = 0;
        minutes = 0;
    } else {
        days = (int) Math.floor(timeDiff / (double) DateUtils.MILLIS_PER_DAY);
        timeDiff -= days * DateUtils.MILLIS_PER_DAY;
        hours = (int) Math.floor(timeDiff / (double) DateUtils.MILLIS_PER_HOUR);
        timeDiff -= hours * DateUtils.MILLIS_PER_HOUR;
        minutes = (int) Math.ceil(timeDiff / (double) DateUtils.MILLIS_PER_MINUTE);
    }
    daysTF.setText(String.valueOf(days));
    hoursTF.setText(String.valueOf(hours));
    minutesTF.setText(String.valueOf(minutes));
}

From source file:phex.gui.dialogs.security.SecurityRuleDialog.java

private ExpiryDate createAfterExpiryDate() {
    Integer days = daysTF.getIntegerValue();
    if (days == null) {
        days = Integer.valueOf(0);
    }//w  ww .  j a v a  2 s  .c om
    Integer hours = hoursTF.getIntegerValue();
    if (hours == null) {
        hours = Integer.valueOf(0);
    }
    Integer minutes = minutesTF.getIntegerValue();
    if (minutes == null) {
        minutes = Integer.valueOf(0);
    }

    long currentTime = System.currentTimeMillis();
    currentTime += days.intValue() * DateUtils.MILLIS_PER_DAY + hours.intValue() * DateUtils.MILLIS_PER_HOUR
            + minutes.intValue() * DateUtils.MILLIS_PER_MINUTE;
    return ExpiryDate.getExpiryDate(currentTime);
}