Java Code Examples for org.joda.time.MutableDateTime#isBeforeNow()
The following examples show how to use
org.joda.time.MutableDateTime#isBeforeNow() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: AlarmScheduler.java From BaldPhone with Apache License 2.0 | 4 votes |
static long nextTimeAlarmWillWorkInMs(@NonNull Alarm alarm) { final MutableDateTime mDateTime = MutableDateTime.now(); { //creating a date of today with the hours and minutes of the alarm mDateTime.setMillisOfSecond(0); mDateTime.setSecondOfMinute(0); mDateTime.setHourOfDay(alarm.getHour()); mDateTime.setMinuteOfHour(alarm.getMinute()); } final int baldDay = getBaldDay(); { //today or one time if ((alarm.getDays() & baldDay) == baldDay) {//today may have an alarm if ((alarm.getDays() == baldDay)) { if (mDateTime.isBeforeNow()) mDateTime.addWeeks(1); //next week if today's time already passed return mDateTime.getMillis(); } else { if (mDateTime.isAfterNow()) return mDateTime.getMillis(); } } else if (alarm.getDays() == -1) { if (mDateTime.isBeforeNow()) mDateTime.addDays(1); return mDateTime.getMillis(); } } int selectedBaldDay = baldDay; { //find next day for (int i = baldDay << 1; i != baldDay; i <<= 1) { if (i > D.Days.SATURDAY) i = D.Days.SUNDAY; if ((alarm.getDays() & i) == i) { selectedBaldDay = i; break; } } } int day = baldDayToJodaDay(selectedBaldDay); mDateTime.setDayOfWeek(day); if (mDateTime.isBeforeNow()) { mDateTime.addWeeks(1); } return mDateTime.getMillis(); }
Example 2
Source File: ReminderScheduler.java From BaldPhone with Apache License 2.0 | 4 votes |
private static long nextTimeReminderWillWorkInMs(@NonNull Reminder reminder, Context context) { final MutableDateTime mDateTime = MutableDateTime.now(); { //creating a date of today with the hours and minutes of the alarm mDateTime.setMillisOfSecond(0); mDateTime.setSecondOfMinute(0); mDateTime.setHourOfDay(BPrefs.getHour(reminder.getStartingTime(), context)); mDateTime.setMinuteOfHour(BPrefs.getMinute(reminder.getStartingTime(), context)); } final int baldDay = getBaldDay(); final int days = reminder.getDays(); { //today or one time if ((days & baldDay) == baldDay) {//today may have an alarm if ((days == baldDay)) { if (mDateTime.isBeforeNow()) mDateTime.addWeeks(1); //next week if today's time already passed return mDateTime.getMillis(); } else { if (mDateTime.isAfterNow()) return mDateTime.getMillis(); } } else if (days == -1) { if (mDateTime.isBeforeNow()) mDateTime.addDays(1); return mDateTime.getMillis(); } } int selectedBaldDay = baldDay; { //find next day for (int i = baldDay << 1; i != baldDay; i <<= 1) { if (i > D.Days.SATURDAY) i = D.Days.SUNDAY; if ((days & i) == i) { selectedBaldDay = i; break; } } } int day = baldDayToJodaDay(selectedBaldDay); mDateTime.setDayOfWeek(day); if (mDateTime.isBeforeNow()) { mDateTime.addWeeks(1); } return mDateTime.getMillis(); }