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.splicemachine.derby.utils.SpliceDateFunctions.java

License:Apache License

/**
 * Implements the trunc_date function//from  w  ww.  ja v  a 2  s.c om
 */
public static Timestamp TRUNC_DATE(Timestamp source, String field) throws SQLException {
    if (source == null || field == null)
        return null;
    DateTime dt = new DateTime(source);
    field = field.toLowerCase();
    String lowerCaseField = field.toLowerCase();
    if ("microseconds".equals(lowerCaseField)) {
        int nanos = source.getNanos();
        nanos = nanos - nanos % 1000;
        source.setNanos(nanos);
        return source;
    } else if ("milliseconds".equals(lowerCaseField)) {
        int nanos = source.getNanos();
        nanos = nanos - nanos % 1000000;
        source.setNanos(nanos);
        return source;
    } else if ("second".equals(lowerCaseField)) {
        source.setNanos(0);
        return source;

    } else if ("minute".equals(lowerCaseField)) {
        DateTime modified = dt.minusSeconds(dt.getSecondOfMinute());
        Timestamp ret = new Timestamp(modified.getMillis());
        ret.setNanos(0);
        return ret;
    } else if ("hour".equals(lowerCaseField)) {
        DateTime modified = dt.minusMinutes(dt.getMinuteOfHour()).minusSeconds(dt.getSecondOfMinute());
        Timestamp ret = new Timestamp(modified.getMillis());
        ret.setNanos(0);
        return ret;
    } else if ("day".equals(lowerCaseField)) {
        DateTime modified = dt.minusHours(dt.getHourOfDay()).minusMinutes(dt.getMinuteOfHour())
                .minusSeconds(dt.getSecondOfMinute());
        Timestamp ret = new Timestamp(modified.getMillis());
        ret.setNanos(0);
        return ret;
    } else if ("week".equals(lowerCaseField)) {
        DateTime modified = dt.minusDays(dt.getDayOfWeek()).minusHours(dt.getHourOfDay())
                .minusMinutes(dt.getMinuteOfHour()).minusSeconds(dt.getSecondOfMinute());
        Timestamp ret = new Timestamp(modified.getMillis());
        ret.setNanos(0);
        return ret;
    } else if ("month".equals(lowerCaseField)) {
        DateTime modified = dt.minusDays(dt.get(DateTimeFieldType.dayOfMonth()) - 1)
                .minusHours(dt.getHourOfDay()).minusMinutes(dt.getMinuteOfHour())
                .minusSeconds(dt.getSecondOfMinute());
        Timestamp ret = new Timestamp(modified.getMillis());
        ret.setNanos(0);
        return ret;
    } else if ("quarter".equals(lowerCaseField)) {
        int month = dt.getMonthOfYear();
        DateTime modified = dt;
        if ((month + 1) % 3 == 1) {
            modified = dt.minusMonths(2);
        } else if ((month + 1) % 3 == 0) {
            modified = dt.minusMonths(1);
        }
        DateTime fin = modified.minusDays(dt.get(DateTimeFieldType.dayOfMonth()) - 1)
                .minusHours(dt.getHourOfDay()).minusMinutes(dt.getMinuteOfHour())
                .minusSeconds(dt.getSecondOfMinute());
        Timestamp ret = new Timestamp(fin.getMillis());
        ret.setNanos(0);
        return ret;
    } else if ("year".equals(lowerCaseField)) {
        DateTime modified = dt.minusDays(dt.get(DateTimeFieldType.dayOfMonth()) - 1)
                .minusHours(dt.getHourOfDay()).minusMonths(dt.getMonthOfYear() - 1)
                .minusMinutes(dt.getMinuteOfHour()).minusSeconds(dt.getSecondOfMinute());
        Timestamp ret = new Timestamp(modified.getMillis());
        ret.setNanos(0);
        return ret;
    } else if ("decade".equals(lowerCaseField)) {
        DateTime modified = dt.minusDays(dt.get(DateTimeFieldType.dayOfMonth()) - 1)
                .minusYears(dt.getYear() % 10).minusHours(dt.getHourOfDay())
                .minusMonths(dt.getMonthOfYear() - 1).minusMinutes(dt.getMinuteOfHour())
                .minusSeconds(dt.getSecondOfMinute());
        Timestamp ret = new Timestamp(modified.getMillis());
        ret.setNanos(0);
        return ret;
    } else if ("century".equals(lowerCaseField)) {
        DateTime modified = dt.minusDays(dt.get(DateTimeFieldType.dayOfMonth()) - 1)
                .minusHours(dt.getHourOfDay()).minusYears(dt.getYear() % 100)
                .minusMonths(dt.getMonthOfYear() - 1).minusMinutes(dt.getMinuteOfHour())
                .minusSeconds(dt.getSecondOfMinute());
        Timestamp ret = new Timestamp(modified.getMillis());
        ret.setNanos(0);
        return ret;
    } else if ("millennium".equals(lowerCaseField)) {
        int newYear = dt.getYear() - dt.getYear() % 1000;
        //noinspection deprecation (converstion from joda to java.sql.Timestamp did not work for millennium < 2000)
        return new Timestamp(newYear - 1900, Calendar.JANUARY, 1, 0, 0, 0, 0);
    } else {
        throw new SQLException(String.format("invalid time unit '%s'", field));
    }
}

From source file:com.tech.auju.implementation.PembelianImpl.java

/**
 * Get today date./*from w w w .  j  a v  a 2  s  .  c  o m*/
 * @return Today date.
 */
private Date getTime() {
    DateTime dt = new DateTime();
    int d = dt.getDayOfWeek();
    int m = dt.getMonthOfYear();
    int y = dt.getYear();

    return new Date(y - 1900, m, d);
}

From source file:com.tmathmeyer.sentinel.ui.views.week.WeekCalendar.java

License:Open Source License

/**
 * updates the week start and end variables
 * /*from  w  w  w. jav  a  2 s  .co m*/
 * @param time a time in the week
 */
private void updateWeekStartAndEnd(DateTime time) {
    MutableDateTime mdt = new MutableDateTime(time);
    mdt.addDays(-(time.getDayOfWeek() % 7));
    mdt.setMillisOfDay(0);
    this.weekStartTime = mdt.toDateTime();
    mdt.addDays(7);
    this.weekEndTime = mdt.toDateTime();
}

From source file:com.tmathmeyer.sentinel.utils.Months.java

License:Open Source License

/**
 * /*from   w  w w . ja  v a  2  s .c o  m*/
 * @param d any DateTime
 * @return get's the Sundae of the provided day's week
 */
public static DateTime getWeekStart(DateTime d) {
    MutableDateTime t = new MutableDateTime(d);
    t.addDays(-(d.getDayOfWeek() % 7));
    return t.toDateTime();
}

From source file:com.tripadvisor.seekbar.ClockView.java

License:Apache License

private void setSeekBarStatus(DateTime newCurrentTime) {
    if (mValidTimeInterval.contains(newCurrentTime)) {
        if (newCurrentTime.getDayOfWeek() == mValidTimeInterval.getStart().getDayOfWeek()) {
            mCircularClockSeekBar.setSeekBarStatus(VALID_RANGE);
            mTimeWeekDayText.setVisibility(GONE);
        } else {//from w  ww .  j  av a  2  s.c  o m
            mCircularClockSeekBar.setSeekBarStatus(DIFFERENT_DAY_OF_WEEK);
            mTimeWeekDayText.setVisibility(VISIBLE);
            mTimeWeekDayText.setText(newCurrentTime.toString("EEE"));
        }
    } else {
        mCircularClockSeekBar.setSeekBarStatus(INVALID_RANGE);
        mTimeWeekDayText.setVisibility(GONE);
    }
}

From source file:com.vaushell.superpipes.nodes.buffer.Slot.java

License:Open Source License

/**
 * Are we inside this slot ?//  w w w . j  a  v a 2  s  . c  om
 *
 * @param date Actual date
 * @return true or not
 */
boolean areWeInside(final DateTime date) {

    if (!daysOfWeek.contains(date.getDayOfWeek())) {
        return false;
    }

    final int dayMS = date.getMillisOfDay();
    return minMillisOfDay <= dayMS && dayMS < maxMillisOfDay;
}

From source file:com.webarch.common.datetime.DateTimeUtils.java

License:Apache License

public static Date getFirstDayOfWeek(Date date) {
    DateTime dateTime = new DateTime(date);
    return dateTime.minusDays(dateTime.getDayOfWeek() - 1).toDate();
}

From source file:com.webarch.common.datetime.DateTimeUtils.java

License:Apache License

public static Date getLastDayOfWeek(Date date) {
    DateTime dateTime = new DateTime(date);
    return dateTime.plusDays(7 - dateTime.getDayOfWeek()).toDate();
}

From source file:cron.DateTimes.java

License:Open Source License

public static DateTime nearestWeekday(DateTime t) {
    if (t.getDayOfWeek() == DateTimeConstants.SATURDAY)
        return t.minusDays(1);
    else if (t.getDayOfWeek() == DateTimeConstants.SUNDAY)
        return t.plusDays(1);
    return t;/* w  ww .  j  a va2s.  c  o m*/
}

From source file:cron.DayOfMonthField.java

License:Open Source License

public boolean matches(DateTime time) {
    if (unspecified)
        return true;
    final int dayOfMonth = time.getDayOfMonth();
    if (lastDay) {
        return dayOfMonth == time.dayOfMonth().withMaximumValue().getDayOfMonth();
    } else if (nearestWeekday) {
        int dayOfWeek = time.getDayOfWeek();
        if ((dayOfWeek == DateTimeConstants.MONDAY && contains(time.minusDays(1).getDayOfMonth()))
                || (dayOfWeek == DateTimeConstants.FRIDAY && contains(time.plusDays(1).getDayOfMonth()))) {
            return true;
        }/*from   w  ww . j  a  va 2 s  . c o  m*/
    }
    return contains(dayOfMonth);
}