Example usage for org.joda.time DateTime withTime

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

Introduction

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

Prototype

public DateTime withTime(LocalTime time) 

Source Link

Document

Returns a copy of this datetime with the specified time, retaining the date fields.

Usage

From source file:com.jay.pea.mhealthapp2.presenter.NewMedication.java

License:Open Source License

/**
 * method to create a medication from the user input data
 *
 * @return//from   ww w.j  av  a 2s. c o  m
 */
private Medication createMed() {
    newMed = new Medication();
    newMed.setMedName(medicationET.getText().toString());
    newMed.setMedNotes(medNotesET.getText().toString());
    newMed.setDose(doseET.getText().toString());
    newMed.setFreq(freqSpinner.getSelectedItemPosition() + 1);
    Log.d(TAG, newMed.getFreq() + "");
    long startDateLong = startDate.getTimeInMillis() / 1000;
    int startDateInt = (int) startDateLong;
    newMed.setMedStart(startDateInt);
    Log.d(TAG, startDateInt + "");
    long endDateLong = endDate.getTimeInMillis() / 1000;
    int endDateInt = (int) endDateLong;
    newMed.setMedEnd(endDateInt);
    Log.d(TAG, endDateInt + "");

    if (medImageString.equals(PHOTOSTRING)) {
    }
    newMed.setImageRes(medImageString);

    int[] alertTimeArrayInt = new int[6];

    for (int i = 0; i < alertArray.length; i++) {
        DateTime dateString;
        DateTime alertTime = new DateTime();

        Log.d(TAG, alertArray[i].getText().toString() + " " + !alertArray[i].getText().toString().isEmpty());

        if (!alertArray[i].getText().toString().isEmpty()) {
            dateString = dtfTime.parseDateTime(alertArray[i].getText().toString());
        } else {
            dateString = dtfTime.parseDateTime(alert1.getText().toString());
        }
        long l = alertTime.withTime(dateString.toLocalTime()).getMillis() / 1000;
        alertTimeArrayInt[i] = (int) l;
    }

    newMed.setAlert1(alertTimeArrayInt[0]);
    newMed.setAlert2(alertTimeArrayInt[1]);
    newMed.setAlert3(alertTimeArrayInt[2]);
    newMed.setAlert4(alertTimeArrayInt[3]);
    newMed.setAlert5(alertTimeArrayInt[4]);
    newMed.setAlert6(alertTimeArrayInt[5]);

    int alertsOnInt = 0;
    if (alertsOn)
        alertsOnInt = 1;
    newMed.setAlertsOn(alertsOnInt);

    //set up the dose Map from the manager class
    newMed.setDoseMap1(new MedicationManager().buildDoseMap1(newMed, context));
    newMed.setDoseMap2(new MedicationManager().buildDoseMap2(newMed, context));

    return newMed;
}

From source file:com.sonicle.webtop.calendar.Service.java

License:Open Source License

public void processGetPlanning(HttpServletRequest request, HttpServletResponse response, PrintWriter out) {
    CoreUserSettings cus = getEnv().getCoreUserSettings();
    CoreManager core = WT.getCoreManager();
    ArrayList<MapItem> items = new ArrayList<>();
    Connection con = null;/*from  www.  j  a  v a 2  s .  c  o  m*/

    try {
        String eventStartDate = ServletUtils.getStringParameter(request, "startDate", true);
        String eventEndDate = ServletUtils.getStringParameter(request, "endDate", true);
        String timezone = ServletUtils.getStringParameter(request, "timezone", true);
        JsEvent.Attendee.List attendees = ServletUtils.getObjectParameter(request, "attendees",
                new JsEvent.Attendee.List(), JsEvent.Attendee.List.class);
        //JsAttendeeList attendees = ServletUtils.getObjectParameter(request, "attendees", new JsAttendeeList(), JsAttendeeList.class);

        // Parses string parameters
        DateTimeZone eventTz = DateTimeZone.forID(timezone);
        DateTime eventStartDt = DateTimeUtils.parseYmdHmsWithZone(eventStartDate, eventTz);
        DateTime eventEndDt = DateTimeUtils.parseYmdHmsWithZone(eventEndDate, eventTz);

        UserProfile up = getEnv().getProfile();
        DateTimeZone profileTz = up.getTimeZone();

        LocalTime localStartTime = eventStartDt.toLocalTime();
        LocalTime localEndTime = eventEndDt.toLocalTime();
        LocalTime fromTime = DateTimeUtils.min(localStartTime, us.getWorkdayStart());
        LocalTime toTime = DateTimeUtils.max(localEndTime, us.getWorkdayEnd());

        // Defines useful date/time formatters
        DateTimeFormatter ymdhmFmt = DateTimeUtils.createYmdHmFormatter();
        DateTimeFormatter tFmt = DateTimeUtils.createFormatter(cus.getShortTimeFormat());
        DateTimeFormatter dFmt = DateTimeUtils.createFormatter(cus.getShortDateFormat());

        ArrayList<String> spans = manager.generateTimeSpans(60, eventStartDt.toLocalDate(),
                eventEndDt.toLocalDate(), us.getWorkdayStart(), us.getWorkdayEnd(), profileTz);

        // Generates fields and columnsInfo dynamically
        ArrayList<FieldMeta> fields = new ArrayList<>();
        ArrayList<GridColumnMeta> colsInfo = new ArrayList<>();

        GridColumnMeta col = null;
        fields.add(new FieldMeta("recipient"));
        colsInfo.add(new GridColumnMeta("recipient"));
        for (String spanKey : spans) {
            LocalDateTime ldt = ymdhmFmt.parseLocalDateTime(spanKey);
            fields.add(new FieldMeta(spanKey));
            col = new GridColumnMeta(spanKey, tFmt.print(ldt));
            col.put("date", dFmt.print(ldt));
            col.put("overlaps", (ldt.compareTo(eventStartDt.toLocalDateTime()) >= 0)
                    && (ldt.compareTo(eventEndDt.toLocalDateTime()) < 0));
            colsInfo.add(col);
        }

        // Collects attendees availability...
        OUser user = null;
        UserProfileId profileId = null;
        LinkedHashSet<String> busyHours = null;
        MapItem item = null;
        for (JsEvent.Attendee attendee : attendees) {
            item = new MapItem();
            item.put("recipient", attendee.recipient);

            user = guessUserByAttendee(core, attendee.recipient);
            if (user != null) {
                profileId = new UserProfileId(user.getDomainId(), user.getUserId());
                busyHours = manager.calculateAvailabilitySpans(60, profileId, eventStartDt.withTime(fromTime),
                        eventEndDt.withTime(toTime), eventTz, true);
                for (String hourKey : spans) {
                    item.put(hourKey, busyHours.contains(hourKey) ? "busy" : "free");
                }
            } else {
                for (String spanKey : spans) {
                    item.put(spanKey, "unknown");
                }
            }
            items.add(item);
        }

        GridMetadata meta = new GridMetadata(true);
        meta.setFields(fields);
        meta.setColumnsInfo(colsInfo);
        new JsonResult(items, meta, items.size()).printTo(out);

    } catch (Exception ex) {
        logger.error("Error in GetPlanning", ex);
        new JsonResult(false, "Error").printTo(out);

    } finally {
        DbUtils.closeQuietly(con);
    }
}