Example usage for org.joda.time DateTime getDayOfWeek

List of usage examples for org.joda.time DateTime getDayOfWeek

Introduction

In this page you can find the example usage for org.joda.time DateTime getDayOfWeek.

Prototype

public int getDayOfWeek() 

Source Link

Document

Get the day of week field value.

Usage

From source file:com.aionemu.gameserver.services.HousingBidService.java

License:Open Source License

public boolean isRegisteringAllowed() {
    DateTime now = DateTime.now();
    DateTime registerEnd = new DateTime(registerDateExpr.getTimeAfter(now.toDate()));
    DateTime auctionEnd = new DateTime(((long) getRunTime() + timeProlonged * 60) * 1000);
    if (now.getDayOfWeek() == registerEnd.getDayOfWeek() && now.getHourOfDay() >= registerEnd.getHourOfDay()
            || (now.getDayOfWeek() == auctionEnd.getDayOfWeek()
                    && now.getHourOfDay() <= auctionEnd.getHourOfDay())) {
        return false;
    }/*from w ww  .  j av  a 2 s .c o m*/
    return true;
}

From source file:com.aionemu.gameserver.services.instance.PvPArenaService.java

License:Open Source License

private static boolean isPvPArenaAvailable() {
    DateTime now = DateTime.now();
    int hour = now.getHourOfDay();
    int day = now.getDayOfWeek();
    if (day == 6 || day == 7) {
        return hour == 0 || hour == 1 || (hour >= 10 && hour <= 23);
    }/* w w w  . j a  v a2 s  .  c o m*/
    return hour == 0 || hour == 1 || hour == 12 || hour == 13 || (hour >= 18 && hour <= 23);
}

From source file:com.aionemu.gameserver.services.instance.PvPArenaService.java

License:Open Source License

private static boolean isHarmonyArenaAvailable() {
    DateTime now = DateTime.now();
    int hour = now.getHourOfDay();
    int day = now.getDayOfWeek();
    if (day == 6) {
        return hour >= 10 || hour == 1 || hour == 2;
    } else if (day == 7) {
        return hour == 0 || hour == 1 || hour >= 10;
    } else {//w w  w  .  j  a  v a  2 s  .  c o  m
        return (hour >= 10 && hour < 14) || (hour >= 18 && hour <= 23);
    }
}

From source file:com.aionemu.gameserver.services.instance.PvPArenaService.java

License:Open Source License

private static boolean isGloryArenaAvailable() {
    DateTime now = DateTime.now();
    int hour = now.getHourOfDay();
    int day = now.getDayOfWeek();
    return (day == 6 || day == 7) && hour >= 20 && hour < 22;
}

From source file:com.aionemu.gameserver.services.QuestService.java

License:Open Source License

private static Timestamp countNextRepeatTime(Player player, QuestTemplate template) {
    DateTime now = DateTime.now();/*  w ww  .  ja v  a 2s.co m*/
    DateTime repeatDate = new DateTime(now.getYear(), now.getMonthOfYear(), now.getDayOfMonth(), 9, 0, 0);
    if (template.isDaily()) {
        if (now.isAfter(repeatDate)) {
            repeatDate = repeatDate.plusHours(24);
        }
        PacketSendUtility.sendPacket(player, new SM_SYSTEM_MESSAGE(1400855, "9"));
    } else {
        int daysToAdd = 7;
        int startDay = 7;
        for (QuestRepeatCycle weekDay : template.getRepeatCycle()) {
            int diff = weekDay.getDay() - repeatDate.getDayOfWeek();
            if (diff > 0 && diff < daysToAdd) {
                daysToAdd = diff;
            }
            if (startDay > weekDay.getDay()) {
                startDay = weekDay.getDay();
            }
        }
        if (startDay == daysToAdd) {
            daysToAdd = 7;
        } else if (daysToAdd == 7 && startDay < 7) {
            daysToAdd = 7 - repeatDate.getDayOfWeek() + startDay;
        }
        repeatDate = repeatDate.plusDays(daysToAdd);
        PacketSendUtility.sendPacket(player, new SM_SYSTEM_MESSAGE(1400857, new DescriptionId(1800667), "9"));
    }
    return new Timestamp(repeatDate.getMillis());
}

From source file:com.alliander.osgp.adapter.protocol.oslp.elster.application.mapping.ConfigurationToOslpSetConfigurationRequestConverter.java

License:Open Source License

private String convertSummerTimeWinterTimeDetails(final DateTime dateTime) {
    LOGGER.info("dateTime: {}", dateTime);

    final StringBuilder timeDetails = new StringBuilder();
    timeDetails.append(String.format("%02d", dateTime.getMonthOfYear()));
    timeDetails.append(dateTime.getDayOfWeek() - 1);
    timeDetails.append(String.format("%02d", dateTime.getHourOfDay()));
    timeDetails.append(String.format("%02d", dateTime.getMinuteOfHour()));
    final String formattedTimeDetails = timeDetails.toString();

    LOGGER.info("formattedTimeDetails: {}", formattedTimeDetails);

    return formattedTimeDetails;
}

From source file:com.aurel.track.util.DateTimeUtils.java

License:Open Source License

/**
 * Add numberOfDays to a date /* www .  j a  v  a  2s  . c  o m*/
 * @param date
 * @param numberOfDays
 * @param jumpOverWeekend
 * @return
 */
public static Date moveByDays(Date date, int numberOfDays, boolean add, boolean onlyWorkdays) {
    DateTime dateTime = new DateTime(getZeroTimeDate(date));
    if (onlyWorkdays) {
        int i = 0;
        while (i < numberOfDays) {
            if (add) {
                dateTime = dateTime.plusDays(1);
            } else {
                dateTime = dateTime.minusDays(1);
            }
            if (dateTime.getDayOfWeek() <= 5) {
                i++;
            }
        }
    } else {
        if (add) {
            dateTime = dateTime.plusDays(numberOfDays);
        } else {
            dateTime = dateTime.minusDays(numberOfDays);
        }
    }
    return dateTime.toDate();
}

From source file:com.aurel.track.util.DateTimeUtils.java

License:Open Source License

/**
 * Returns number of free days from given interval, start date included always, endDate only if includeLastDay == true!
 * @param startDateParam/*from  w w w .j  a v  a 2 s.c o m*/
 * @param endDateParam
 * @param includeLastDay
 * @return
 */
public static int getDurationBetweenDates(Date startDateParam, Date endDateParam, boolean onlyWorkdays) {
    DateTime dateTime1 = new DateTime(getZeroTimeDate(startDateParam));
    DateTime dateTime2 = new DateTime(getZeroTimeDate(endDateParam));
    int i = 0;
    if (onlyWorkdays) {
        while (dateTime1.isBefore(dateTime2)) {
            dateTime1 = dateTime1.plusDays(1);
            int dayOfWeek = dateTime1.getDayOfWeek();
            if (dayOfWeek <= 5) {
                //weekday
                i++;
            } else {
                //end date explicitly set on Saturday or Sunday: take this week end day(s) as working day
                if (!dateTime1.isBefore(dateTime2)) {
                    if (dayOfWeek == 6) {
                        //add one day for task ending on Saturday
                        i++;
                    } else {
                        //add two days for task ending on Sunday 
                        i = i + 2;
                    }
                }
            }
        }
        return i;
    } else {
        return Days.daysBetween(dateTime1, dateTime2).getDays() + 1;
    }
}

From source file:com.bgh.myopeninvoice.db.model.TimeSheetEntity.java

License:Apache License

@Transient
public Boolean getWeekend() {
    if (isWeekend == null) {
        DateTime d = new DateTime(itemDate);
        isWeekend = d.getDayOfWeek() == DateTimeConstants.SATURDAY
                || d.getDayOfWeek() == DateTimeConstants.SUNDAY ? Boolean.TRUE : Boolean.FALSE;
    }/*  ww  w.j av  a 2s.c o m*/
    return isWeekend;
}

From source file:com.cfelde.cron4joda.SchedulingPattern.java

License:Open Source License

/**
 * This methods returns true if the given timestamp (expressed as a UNIX-era
 * millis value) matches the pattern, according to the given time zone.
 *
 * @param timezone A time zone.//from  w w w .  jav a 2  s  . com
 * @param millis The timestamp, as a UNIX-era millis value.
 * @return true if the given timestamp matches the pattern.
 */
public boolean match(DateTime dt) {
    int minute = dt.getMinuteOfHour();
    int hour = dt.getHourOfDay();
    int dayOfMonth = dt.getDayOfMonth();
    int month = dt.getMonthOfYear(); //gc.get(Calendar.MONTH) + 1;
    int dayOfWeek = dt.getDayOfWeek(); //gc.get(Calendar.DAY_OF_WEEK) - 1;

    for (int i = 0; i < matcherSize; i++) {
        ValueMatcher minuteMatcher = (ValueMatcher) minuteMatchers.get(i);
        ValueMatcher hourMatcher = (ValueMatcher) hourMatchers.get(i);
        ValueMatcher dayOfMonthMatcher = (ValueMatcher) dayOfMonthMatchers.get(i);
        ValueMatcher monthMatcher = (ValueMatcher) monthMatchers.get(i);
        ValueMatcher dayOfWeekMatcher = (ValueMatcher) dayOfWeekMatchers.get(i);

        boolean eval = minuteMatcher.match(minute) && hourMatcher.match(hour)
                && ((dayOfMonthMatcher instanceof DayOfMonthValueMatcher)
                        ? ((DayOfMonthValueMatcher) dayOfMonthMatcher).match(dayOfMonth, month,
                                dt.year().getField().isLeap(dt.getMillis())) /*gc.isLeapYear(year))*/
                        : dayOfMonthMatcher.match(dayOfMonth))
                && monthMatcher.match(month) && dayOfWeekMatcher.match(dayOfWeek);

        if (eval) {
            return true;
        }
    }

    return false;
}