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

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

Introduction

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

Prototype

long MILLIS_PER_HOUR

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

Click Source Link

Document

Number of milliseconds in a standard hour.

Usage

From source file:de.tor.tribes.ui.algo.AttackTimePanel.java

/**
 * Get the currently set up send span// ww w .j  a v a 2 s . c om
 *
 * @return TimeSpan The send span
 */
private TimeSpan getSendSpan() {
    TimeSpan start = null;
    Range<Long> range = Range.between(
            Math.round(jSendTimeFrame.getMinimumColoredValue()) * DateUtils.MILLIS_PER_HOUR,
            Math.round(jSendTimeFrame.getMaximumColoredValue()) * DateUtils.MILLIS_PER_HOUR);
    if (Objects.equals(range.getMinimum(), range.getMaximum()) && !jExactTimeButton.isSelected()) {
        return null;
    }

    if (jAlwaysButton.isSelected()) {
        start = new TimeSpan(range, true);
    } else if (jDayButton.isSelected()) {
        range = Range.between(dateTimeField.getSelectedDate().getTime() + range.getMinimum(),
                dateTimeField.getSelectedDate().getTime() + range.getMaximum());
        start = new TimeSpan(range, false);
    } else if (jExactTimeButton.isSelected()) {
        start = new TimeSpan(dateTimeField.getSelectedDate());
    }
    if (start != null) {
        start.setDirection(TimeSpan.DIRECTION.SEND);
    }

    return start;
}

From source file:de.tor.tribes.types.TimeSpan.java

@Override
public String toString() {
    String result = null;/*from www .j a va  2  s. c  o m*/

    if (isValidAtSpecificDay()) {
        SimpleDateFormat fDate = new SimpleDateFormat("dd.MM.yy");
        int startHour = (int) DateUtils.getFragmentInHours(new Date(getSpan().getMinimum()), Calendar.DATE);
        int endHour = (int) DateUtils.getFragmentInHours(new Date(getSpan().getMaximum() + 1), Calendar.DATE);

        result = "Am " + fDate.format(getDate()) + ", von " + startHour + " Uhr bis " + endHour + " Uhr";
    } else if (isValidAtEveryDay()) {
        int startHour = (int) (getSpan().getMinimum() / DateUtils.MILLIS_PER_HOUR);
        int endHour = (int) ((getSpan().getMaximum() + 1) / DateUtils.MILLIS_PER_HOUR);

        result = "T\u00E4glich, von " + startHour + " Uhr bis " + endHour + " Uhr";
    } else if (isValidAtExactTime()) {
        SimpleDateFormat f = new SimpleDateFormat("dd.MM.yy 'um' HH:mm:ss 'Uhr'");
        result = "Am " + f.format(getSpan().getMinimum());
    } else if (isValidAtManualRange()) {
        SimpleDateFormat f = new SimpleDateFormat("dd.MM.yy 'um' HH:mm:ss 'Uhr'");
        result = "Von " + f.format(new Date(getSpan().getMinimum())) + " bis "
                + f.format(new Date(getSpan().getMaximum()));
    } else {
        result = "";
    }

    return result;
}

From source file:de.tor.tribes.ui.algo.AttackTimePanel.java

/**
 * Get the currently set up arrive span//w w  w  .  j a va 2 s.  c  o  m
 *
 * @return TimeSpan The arrive span
 */
private TimeSpan getArriveSpan() {
    TimeSpan arrive = null;
    Range<Long> range = Range.between(
            Math.round(jSendTimeFrame.getMinimumColoredValue()) * DateUtils.MILLIS_PER_HOUR,
            Math.round(jSendTimeFrame.getMaximumColoredValue()) * DateUtils.MILLIS_PER_HOUR);
    if (Objects.equals(range.getMinimum(), range.getMaximum()) && !jExactTimeButton.isSelected()) {
        return null;
    }

    if (jAlwaysButton.isSelected()) {
        arrive = new TimeSpan(range, true);
    } else if (jDayButton.isSelected()) {
        range = Range.between(dateTimeField.getSelectedDate().getTime() + range.getMinimum(),
                dateTimeField.getSelectedDate().getTime() + range.getMaximum());
        arrive = new TimeSpan(range, false);
    } else if (jExactTimeButton.isSelected()) {
        arrive = new TimeSpan(dateTimeField.getSelectedDate());
    }
    if (arrive != null) {
        arrive.setDirection(TimeSpan.DIRECTION.ARRIVE);
    }

    return arrive;
}

From source file:de.tor.tribes.types.FarmInformation.java

private void guessResourceBuildings(FightReport pReport1, FightReport pReport2) {
    double dt = (double) (pReport2.getTimestamp() - pReport1.getTimestamp())
            / (double) DateUtils.MILLIS_PER_HOUR;

    for (int i = 0; i < 3; i++) {
        // get resources in village at time of arrival
        int resourceInVillage1 = pReport1.getHaul()[i]
                + ((pReport1.getSpyedResources() != null) ? pReport1.getSpyedResources()[i] : 0);
        int resourceInVillage2 = pReport2.getHaul()[i]
                + ((pReport2.getSpyedResources() != null) ? pReport2.getSpyedResources()[i] : 0);
        int dResource = resourceInVillage2 - resourceInVillage1;

        int resourceBuildingLevel = DSCalculator.calculateEstimatedResourceBuildingLevel(dResource, dt);
        switch (i) {
        case 0://from   w w  w.  j  a v a 2s . c om
            setBuilding("wood", Math.max(getBuilding("wood"), resourceBuildingLevel));
            break;
        case 1:
            setBuilding("stone", Math.max(getBuilding("stone"), resourceBuildingLevel));
            break;
        case 2:
            setBuilding("iron", Math.max(getBuilding("iron"), resourceBuildingLevel));
            break;
        }
    }
}

From source file:de.tor.tribes.types.FarmInformation.java

private void guessResourceBuildings(FightReport pReport) {
    if (pReport == null || pReport.getHaul() == null) {
        // no info
        return;//from   www . j  a va2s  .c o  m
    }
    // only use if last report is not too old....!! -> send time - 30min !?
    // and if last attack returned empty
    long send = pReport.getTimestamp() - DSCalculator.calculateMoveTimeInMillis(pReport.getSourceVillage(),
            pReport.getTargetVillage(), pReport.getAttackers().getSpeed());

    if (resourcesFoundInLastReport || lastReport == -1 || lastReport < send - 200 * DateUtils.MILLIS_PER_MINUTE
            || lastReport == pReport.getTimestamp()) {
        // ignore this report
        return;
    }

    int wood = pReport.getHaul()[0];
    int clay = pReport.getHaul()[1];
    int iron = pReport.getHaul()[2];

    double dt = (pReport.getTimestamp() - lastReport) / (double) DateUtils.MILLIS_PER_HOUR;
    int woodBuildingLevel = DSCalculator.calculateEstimatedResourceBuildingLevel(wood, dt);
    int clayBuildingLevel = DSCalculator.calculateEstimatedResourceBuildingLevel(clay, dt);
    int ironBuildingLevel = DSCalculator.calculateEstimatedResourceBuildingLevel(iron, dt);
    setBuilding("wood", Math.max(getBuilding("wood"), woodBuildingLevel));
    setBuilding("stone", Math.max(getBuilding("stone"), clayBuildingLevel));
    setBuilding("iron", Math.max(getBuilding("iron"), ironBuildingLevel));
}

From source file:de.tor.tribes.ui.wiz.ref.SupportRefillCalculationPanel.java

protected TimeFrame getTimeFrame() {
    if (jRadioNoArrive.isSelected()) {
        //add 1 Jear to timespan to ensure that every movement is possible
        TimeFrame f = new TimeFrame(new Date(System.currentTimeMillis()), new Date(System.currentTimeMillis()),
                new Date(System.currentTimeMillis() + 60 * 60 * 24 * 365 * 1000),
                new Date(System.currentTimeMillis() + 60 * 60 * 24 * 365 * 1000));

        f.addArriveTimeSpan(new TimeSpan(Range.between(0l, 24l * DateUtils.MILLIS_PER_HOUR), true));
        f.addStartTimeSpan(new TimeSpan(Range.between(0l, 24l * DateUtils.MILLIS_PER_HOUR), true));
        return f;
    } else if (jRadioLastArrive.isSelected()) {
        Date arrive = jArriveTime.getSelectedDate();
        TimeFrame f = new TimeFrame(new Date(System.currentTimeMillis()), new Date(System.currentTimeMillis()),
                arrive, arrive);//w w  w  .j  av  a  2 s .  c  o m
        f.addStartTimeSpan(new TimeSpan(Range.between(System.currentTimeMillis(), arrive.getTime()), false));
        f.addArriveTimeSpan(new TimeSpan(Range.between(0l, 24l * DateUtils.MILLIS_PER_HOUR), true));
        return f;
    } else if (jRadioFixedArrive.isSelected()) {
        Date arrive = jArriveTime.getSelectedDate();
        TimeFrame f = new TimeFrame(new Date(System.currentTimeMillis()), new Date(System.currentTimeMillis()),
                arrive, arrive);
        f.addArriveTimeSpan(new TimeSpan(arrive));
        f.addStartTimeSpan(new TimeSpan(Range.between(0l, 24l * DateUtils.MILLIS_PER_HOUR), true));
        return f;
    } else {
        notifyStatusUpdate("Kein Ankunftszeit Typ gew\u00E4hlt");
        notifyStatusUpdate("Berechnung abgebrochen!");
        return null;
    }
}

From source file:tr.edu.gsu.peralab.mobilesensing.web.service.UserService.java

/**
 * @param userName//from  w w w .j  a  v a2 s  .c o  m
 * @return Monthly user activity percentage
 */
public ActivityMapResponseList retrieveActivityPercentage(String userName, Long startTimeMillis,
        Long endTimeMillis) {
    long hours = (endTimeMillis - startTimeMillis) / DateUtils.MILLIS_PER_HOUR;
    ActivityMapResponseList activityMapResponseList = new ActivityMapResponseList();
    List<ActivityMapResponse> responses = new ArrayList<ActivityMapResponse>();
    for (int i = 0; i < 6; i++) {
        ActivityMapResponse response = new ActivityMapResponse();
        Calendar startTime = Calendar.getInstance();
        Calendar endTime = Calendar.getInstance();
        calculatePeriod(hours, i, startTime, endTime, response);
        Map<String, Double> activityMapPerPeriod = retrieveActivityNumbers(userName,
                startTime.getTimeInMillis(), endTime.getTimeInMillis());
        response.setDate(startTime.getTime());
        response.setActivityMap(activityMapPerPeriod);
        responses.add(response);
    }
    Collections.sort(responses);
    activityMapResponseList.setActivityMaps(responses);
    return activityMapResponseList;
}