List of usage examples for org.apache.commons.lang.time DateUtils isSameDay
public static boolean isSameDay(Calendar cal1, Calendar cal2)
Checks if two calendar objects are on the same day ignoring time.
28 Mar 2002 13:45 and 28 Mar 2002 06:01 would return true.
From source file:com.pureinfo.tgirls.servlet.GetWelcomeMsg.java
@Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { JsonBase result = new JsonBase(); response.setContentType("text/json; charset=utf-8"); User loginUser = CookieUtils.getLoginUser(request, response); if (loginUser == null) { result.setErrorCode(JsonBase.ErrorCode.ERROR.getCode()); result.setErrorMsg(""); response.getWriter().write(result.toString()); return;//from www .ja va 2 s. c o m } IUserMgr usermgr = null;//(IUserMgr) ArkContentHelper.getContentMgrOf(User.class); try { usermgr = (IUserMgr) ArkContentHelper.getContentMgrOf(User.class); if (loginUser.getLastLoginTime() == null) { loginUser.setLastLoginTime(new Date()); usermgr.save(loginUser); } } catch (PureException e1) { logger.error(e1); result.setErrorCode(JsonBase.ErrorCode.ERROR.getCode()); if (StringUtils.isNotEmpty(e1.getMessage())) { result.setErrorMsg(e1.getMessage()); } else { result.setErrorMsg(""); } response.getWriter().write(result.toString()); return; } if (DateUtils.isSameDay(loginUser.getLastLoginTime(), new Date())) { result.setErrorCode(JsonBase.ErrorCode.ERROR.getCode()); result.setErrorMsg("???"); response.getWriter().write(result.toString()); return; } else { //???? createNormalRandomEvent(loginUser); } Calendar now = Calendar.getInstance(); int m = now.get(Calendar.MONTH); int d = now.get(Calendar.DAY_OF_MONTH); List<RandomEvent> todayEvents = (List<RandomEvent>) cache.get(WELCOME_EVENT_KEY + "." + m + "." + d); if (todayEvents == null) { todayEvents = new ArrayList<RandomEvent>(); logger.debug("today events is empty. reload."); List<RandomEvent> allWelcomeRandomEvents = null; try { allWelcomeRandomEvents = getWelcomeEvents(); } catch (PureException e) { logger.error("error when get welcome events.", e); } if (allWelcomeRandomEvents == null || allWelcomeRandomEvents.isEmpty()) { logger.debug("all welcome events is empty."); result.setErrorCode(JsonBase.ErrorCode.ERROR.getCode()); result.setErrorMsg("?"); response.getWriter().write(result.toString()); return; } List<RandomEvent> normalEvents = new ArrayList<RandomEvent>();// Calendar c1 = Calendar.getInstance();// Calendar.getInstance(); Calendar today = Calendar.getInstance(); for (Iterator<RandomEvent> iterator = allWelcomeRandomEvents.iterator(); iterator.hasNext();) { RandomEvent randomEvent = iterator.next(); String month_day = randomEvent.getEventMonthDay(); if (StringUtils.isNotEmpty(month_day)) { try { int i = month_day.indexOf("-"); int month = NumberUtils.toInt(month_day.substring(0, i), -1); int day = NumberUtils.toInt(month_day.substring(i + 1), -1); c1.clear(); c1 = Calendar.getInstance(); // logger.debug("the random event [" + randomEvent.getEventInfo() + "] month:" + month // + " ,day: " + day); if (month != -1) { c1.set(Calendar.MONTH, month - 1); } if (day != -1) { c1.set(Calendar.DAY_OF_MONTH, day); } if (DateUtils.isSameDay(c1, today)) { todayEvents.add(randomEvent); } } catch (Exception e) { } } else { normalEvents.add(randomEvent); } } if (todayEvents == null || todayEvents.isEmpty()) { if (normalEvents.isEmpty()) { logger.debug("today events is empty, and normal events is empty too."); result.setErrorCode(JsonBase.ErrorCode.ERROR.getCode()); result.setErrorMsg("?"); response.getWriter().write(result.toString()); return; } else { todayEvents.addAll(normalEvents); } } Collections.sort(todayEvents, new BeanComparator("eventScale")); todayTotalScale = 0; for (Iterator<RandomEvent> iterator = todayEvents.iterator(); iterator.hasNext();) { RandomEvent randomEvent2 = iterator.next(); todayTotalScale += randomEvent2.getEventScale(); } cache.put(WELCOME_EVENT_KEY + "." + m + "." + d, todayEvents); } if (todayEvents == null || todayEvents.isEmpty()) { logger.debug("today events is empty, system events is empty ."); result.setErrorCode(JsonBase.ErrorCode.ERROR.getCode()); result.setErrorMsg("?"); response.getWriter().write(result.toString()); return; } int random = new Random().nextInt(todayTotalScale); RandomEvent todayEvent = null; int start = 0; int end = 0; for (int i = 0; i < todayEvents.size(); i++) { if (i == 0) { start = 0; end = todayEvents.get(i).getEventScale(); } else { start = end; end = end + todayEvents.get(i).getEventScale(); } if (random >= start && random < end) { todayEvent = todayEvents.get(i); break; } } if (todayEvent == null) { result.setErrorCode(JsonBase.ErrorCode.ERROR.getCode()); result.setErrorMsg("?"); response.getWriter().write(result.toString()); return; } try { result.put("event", new JSONObject(todayEvent)); logger.info("welcome event[" + todayEvent.getEventInfo() + "]"); loginUser.setFunds(loginUser.getFunds() + todayEvent.getEventMoney()); loginUser.setAssets(loginUser.getAssets() + todayEvent.getEventMoney()); loginUser.setLastLoginTime(new Date()); usermgr.save(loginUser); request.getSession().setAttribute(ArkHelper.ATTR_LOGIN_USER, loginUser); } catch (Exception e) { logger.error(e); result.setErrorCode(JsonBase.ErrorCode.ERROR.getCode()); if (StringUtils.isNotEmpty(e.getMessage())) { result.setErrorMsg(e.getMessage()); } else { result.setErrorMsg(""); } response.getWriter().write(result.toString()); return; } logger.debug("event:" + result.toString()); request.getSession().setAttribute(ArkHelper.ATTR_LOGIN_USER, loginUser); response.getWriter().write(result.toString()); return; }
From source file:net.audumla.irrigation.IrrigationZone.java
@Override public List<Event> getIrrigationEventsForDay(Date day) { return irrigationEvents.stream().filter(e -> DateUtils.isSameDay(e.getEventStartTime(), day)) .collect(Collectors.toCollection(ArrayList::new)); }
From source file:lovelmimica.app.DivingClub.java
private List<Dive> getSameDayDives(Dive dive) { List<Dive> sameDayDives = new ArrayList<Dive>(); for (Dive u : this.dives) { if (DateUtils.isSameDay(dive.getDate(), u.getDate())) sameDayDives.add(u);//w w w . j a v a 2 s . com } return sameDayDives; }
From source file:de.knurt.fam.news.NewsSourceForYourBookings.java
private NewsItem getNewsItemOf(Booking booking, TimeFrame from) { NewsItem result = null;//from w w w .java 2 s .c o m if ((booking.isCanceled() && from.contains(booking.getCancelation().getDateCanceled())) || (!booking.isCanceled() && !booking.sessionAlreadyMade())) { result = new NewsItemDefault(); String facilityLabel = booking.getFacility().getLabel(); String bOrA = booking.isApplication() ? "application" : "booking"; // INTLANG String desc = ""; if (booking.isCanceled()) { String reason = booking.getCancelation().getReason(); desc = String.format("Your %s for %s was canceled.", bOrA, facilityLabel); // INTLANG if (reason != null && !reason.isEmpty()) { desc += " Reason: " + reason; } result.setEventStarts(booking.getCancelation().getDateCanceled()); } else { // uncanceled booking if (booking.isQueueBased() && !booking.sessionAlreadyMade()) { // booking in queue and not made desc = String.format("Expected start of your session on %s. Your position in queue: %s.", facilityLabel, ((QueueBooking) booking).getCurrentQueuePosition()); // INTLANG result.setEventStarts(((QueueBooking) booking).getExpectedSessionStart().getTime()); if (booking.sessionAlreadyBegun()) { result.setLinkToFurtherInformation( TemplateHtml.href("viewrequest") + QueryStringBuilder.getQueryString(booking)); } else { result.setLinkToFurtherInformation( TemplateHtml.href("editrequest") + QueryStringBuilder.getQueryString(booking)); } } else { // booking has session start time Calendar today = Calendar.getInstance(); if (DateUtils.isSameDay(today.getTime(), booking.getSessionTimeFrame().getDateStart())) { // session is today if (DateUtils.isSameDay(today.getTime(), booking.getSessionTimeFrame().getDateEnd())) { desc = String.format("Your session on %s.", facilityLabel); // INTLANG result.setEventStarts(booking.getSessionTimeFrame().getDateStart()); result.setEventEnds(booking.getSessionTimeFrame().getDateEnd()); } else { desc = String.format("Your session on %s (ends on %s).", facilityLabel, FamDateFormat.getDateAndTimeShort(booking.getSessionTimeFrame().getDateEnd())); // INTLANG result.setEventStarts(booking.getSessionTimeFrame().getDateStart()); } if (booking.sessionAlreadyBegun()) { result.setLinkToFurtherInformation( TemplateHtml.href("viewrequest") + QueryStringBuilder.getQueryString(booking)); } else { result.setLinkToFurtherInformation( TemplateHtml.href("editrequest") + QueryStringBuilder.getQueryString(booking)); } } else { // session starts in future Calendar booking_c = booking.getSessionTimeFrame().getCalendarStart(); if (booking_c.before(today)) { desc = String.format("your session on %s.", facilityLabel); // INTLANG } else { long days = CalendarUtil.me().daysBetween(today, booking_c); desc = String.format("%s %s to your session on %s.", days, days == 1 ? "day" : "days", facilityLabel); // INTLANG } result.setEventStarts(booking_c.getTime()); if (booking.getSessionTimeFrame().getCalendarEnd() != null) { result.setEventEnds(booking.getSessionTimeFrame().getCalendarEnd().getTime()); } result.setLinkToFurtherInformation( TemplateHtml.href("editrequest") + QueryStringBuilder.getQueryString(booking)); } } if (booking.getNotice() != null && !booking.getNotice().isEmpty()) { desc += " Notice: " + booking.getNotice(); } } if (result != null && desc != null) { result.setDescription(desc); } } return result; }
From source file:com.pureinfo.tgirls.servlet.NormalRandomEventMsg.java
public void createEvent(User loginUser) throws ServletException, IOException { if (loginUser == null) { return;/*from w ww . ja v a 2 s. c om*/ } Calendar now = Calendar.getInstance(); int m = now.get(Calendar.MONTH); int d = now.get(Calendar.DAY_OF_MONTH); List<RandomEvent> todayEvents = (List<RandomEvent>) cache.get(NORMAL_EVENT_KEY + "." + m + "." + d); if (todayEvents == null) { todayEvents = new ArrayList<RandomEvent>(); logger.debug("today events is empty. reload."); List<RandomEvent> allNormalEvents = null; try { allNormalEvents = getNormalEvents(); // cache.put(WELCOME_EVENT_KEY, allWelcomeRandomEvents); } catch (PureException e) { logger.error("error when get normal events.", e); } if (allNormalEvents == null || allNormalEvents.isEmpty()) { logger.debug("all normal events is empty."); return; } List<RandomEvent> noDayEvents = new ArrayList<RandomEvent>();// Calendar c1 = Calendar.getInstance();// Calendar.getInstance(); Calendar today = Calendar.getInstance(); for (Iterator iterator = allNormalEvents.iterator(); iterator.hasNext();) { RandomEvent randomEvent = (RandomEvent) iterator.next(); String month_day = randomEvent.getEventMonthDay(); if (StringUtils.isNotEmpty(month_day)) { try { int i = month_day.indexOf("-"); int month = NumberUtils.toInt(month_day.substring(0, i), -1); int day = NumberUtils.toInt(month_day.substring(i + 1), -1); c1.clear(); c1 = Calendar.getInstance(); // logger.debug("the random event [" + randomEvent.getEventInfo() + "] month:" + month + " day:" // + day); if (month != -1) { c1.set(Calendar.MONTH, month - 1); } if (day != -1) { c1.set(Calendar.DAY_OF_MONTH, day); } if (DateUtils.isSameDay(c1, today)) { logger.debug("today event:" + randomEvent.getEventInfo()); todayEvents.add(randomEvent); } } catch (Exception e) { } } else { noDayEvents.add(randomEvent); } } if (todayEvents == null || todayEvents.isEmpty()) { if (noDayEvents.isEmpty()) { logger.debug("today events is empty, and noDay events is empty too."); return; } } // ////////////////////////////// // ////////////////////////////// todayEvents.addAll(noDayEvents); // ////////////////////// // ////////////////////// Collections.sort(todayEvents, new BeanComparator("eventScale")); todayTotalScale = 0; for (Iterator iterator = todayEvents.iterator(); iterator.hasNext();) { RandomEvent randomEvent2 = (RandomEvent) iterator.next(); todayTotalScale += randomEvent2.getEventScale(); } cache.put(NORMAL_EVENT_KEY + "." + m + "." + d, todayEvents); } int random = new Random().nextInt(todayTotalScale); RandomEvent todayEvent = null; int start = 0; int end = 0; for (int i = 0; i < todayEvents.size(); i++) { if (i == 0) { start = 0; end = todayEvents.get(i).getEventScale(); } else { start = end; end = end + todayEvents.get(i).getEventScale(); } if (random >= start && random < end) { todayEvent = todayEvents.get(i); break; } } if (todayEvent == null) { return; } try { logger.info("normal event[" + todayEvent.getEventInfo() + "]"); // loginUser.setFunds(loginUser.getFunds() + todayEvent.getEventMoney()); // loginUser.setAssets(loginUser.getAssets() + todayEvent.getEventMoney()); createInformation(loginUser, todayEvent); UserMoneySaveEntry userMoney = new UserMoneySaveEntry(); userMoney.setTaobaoId(loginUser.getTaobaoID()); userMoney.setFunds(todayEvent.getEventMoney()); userMoney.setAssets(todayEvent.getEventMoney()); UserMoneySaveCache.getInstance().add(userMoney); // UserInfoSaveCache.getInstance().add(loginUser); } catch (Exception e) { logger.error(e); return; } return; }
From source file:net.audumla.scheduler.quartz.SunScheduleTest.java
@Test public void testRise3Times() throws Exception { AstronomicEvent event = getSunRiseEvent(); Date now = new Date(); if (event.getCalculatedEventTime().before(now)) { now = DateUtils.addDays(now, 1); }/* www .jav a 2 s. c om*/ AstronomicTriggerImpl trigger = (AstronomicTriggerImpl) AstronomicScheduleBuilder.astronomicalSchedule() .startEvent(event).startEventOffset(0).withEventCount(3).build(); trigger.computeFirstFireTime(null); Date fire = trigger.getNextFireTime(); assert DateUtils.isSameDay(fire, now); trigger.triggered(null); fire = trigger.getNextFireTime(); assert DateUtils.isSameDay(fire, DateUtils.addDays(now, 1)); trigger.triggered(null); fire = trigger.getNextFireTime(); assert DateUtils.isSameDay(fire, DateUtils.addDays(now, 2)); trigger.triggered(null); fire = trigger.getNextFireTime(); assert fire == null; }
From source file:com.cse3310.phms.ui.fragments.DietScreenFragment.java
private void populateCardList(Date date) { User user = UserSingleton.INSTANCE.getCurrentUser(); cardList.clear();// w ww . jav a2 s. com for (Food food : user.getDiet().getFoods()) { // iterate over all the food in the user's diet // check if the day the food was added is the same // as the current selected day if (DateUtils.isSameDay(new Date((long) food.getTime()), date)) { cardList.add(createFoodCard(food)); // if so, create a card for that food and add it to the list } } }
From source file:de.fme.topx.component.TopXUpdateComponent.java
/** * increase the hitcount for the given noderef by using the aspect * <code>topx:countable</code>. Does not fire events for other behaviours. * Using admin use to increment because not everybody has * /*from w ww .jav a2 s . c o m*/ * @param nodeRef * @param userName * current user who reads or updates the document. * @param counterUserProperty * @throws SystemException * @throws NotSupportedException * @throws HeuristicRollbackException * @throws HeuristicMixedException * @throws RollbackException * @throws IllegalStateException * @throws SecurityException */ @SuppressWarnings("unchecked") public Integer increaseHitcount(final NodeRef nodeRef, final String userName, final QName counterProperty, final QName counterDateProperty, final QName counterUserProperty) throws NotSupportedException, SystemException, SecurityException, IllegalStateException, RollbackException, HeuristicMixedException, HeuristicRollbackException { UserTransaction transaction = transactionService.getNonPropagatingUserTransaction(false); transaction.begin(); try { Preconditions.checkNotNull(nodeRef, "Passed noderef should not be null"); Preconditions.checkArgument(nodeService.exists(nodeRef), "Node[" + nodeRef + "] must exist in the repository"); filter.disableAllBehaviours(); Map<QName, Serializable> newProperties = Maps.newHashMap(); Integer counter = (Integer) nodeService.getProperty(nodeRef, counterProperty); if (counter == null) { counter = setHitCountProperties(nodeRef, counterProperty, counterDateProperty, counterUserProperty, newProperties, 1, userName); } else { boolean shouldCount = true; Map<QName, Serializable> properties = nodeService.getProperties(nodeRef); Serializable usersValue = properties.get(counterUserProperty); List<String> users; if (!(usersValue instanceof List)) { users = Lists.newArrayList((String) usersValue); } else { users = (List<String>) usersValue; } if (users != null) { int userIndex = users.indexOf(userName); if (userIndex != -1) { List<Date> counterDates = (List<Date>) properties.get(counterDateProperty); Date lastUserReadDate = counterDates.get(userIndex); // only count one download for a // document of // a user per day if (DateUtils.isSameDay(lastUserReadDate, new Date())) { shouldCount = false; LOG.info("User " + userName + " already downloads/updates document " + nodeRef + " today. Skip counting."); } } } if (shouldCount) { counter = setHitCountProperties(nodeRef, counterProperty, counterDateProperty, counterUserProperty, newProperties, counter, userName); } } transaction.commit(); LOG.info("Commiting transaction for Node " + nodeRef); return counter; } finally { filter.enableAllBehaviours(); if (transaction.getStatus() == javax.transaction.Status.STATUS_ACTIVE) { transaction.rollback(); LOG.warn("Had to rollback the transaction for Node " + nodeRef); } } }
From source file:com.delicious.deliciousfeeds4J.DeliciousUtilTest.java
@Test public void testDeserializeUsersFromJson() throws Exception { final String SAMPLE_DATA = "[{\"dt\": \"2012-10-29T12:42:29Z\", \"user\": \"testuser\"}]"; final Set<User> users = DeliciousUtil.deserializeUsersFromJson(SAMPLE_DATA); assertNotNull(users);//from ww w . j a va 2 s .c o m assertFalse(users.isEmpty()); final User user = users.iterator().next(); assertNotNull(user); assertEquals("testuser", user.getUser()); final Calendar calendar = new GregorianCalendar(); calendar.set(Calendar.DAY_OF_MONTH, 29); calendar.set(Calendar.MONTH, Calendar.OCTOBER); calendar.set(Calendar.YEAR, 2012); assertTrue(DateUtils.isSameDay(calendar.getTime(), user.getAddedDate())); }
From source file:com.cse3310.phms.ui.fragments.AppointmentScreenFragment.java
@Override public void onDateSelected(Date date) { if (isAddMode) { // start an activity to add new appointment isAddMode = false;/* ww w .jav a 2 s . c om*/ Intent intent = new Intent(getActivity(), AddAppointmentActivity_.class); intent.putExtra("date", date); startActivity(intent); } else { // use has not click the add icon i.e. not in add mode final List<Card> cardList = new ArrayList<Card>(); cardList.clear(); // get appointment with the same date as the selected date for (Appointment appointment : mUser.getAppointments()) { if (DateUtils.isSameDay(date, new Date(appointment.getTime()))) { cardList.add(new AppointmentCard(getActivity(), appointment)); } } // open up a dialog with a list of appointments for dates that have appointment if (!cardList.isEmpty()) { Collections.sort(cardList, AppointmentCardComparator.TIME_SORT); CardListDialogFragment_.newInstance(cardList, "Appointments").show(getFragmentManager(), "tag"); } } }