mm.setSubject(ewsMessage.getSubject());
private TaskDto convertToTaskDto(final EmailMessage email) throws ServiceLocalException { Integer flagValue = null; Date dueDate = null; for (final ExtendedProperty extendedProperty : email.getExtendedProperties()) { if (extendedProperty.getPropertyDefinition().getTag() != null && extendedProperty.getPropertyDefinition() .getTag() == PID_TAG_FLAG_STATUS) { flagValue = (Integer) extendedProperty.getValue(); } else if (extendedProperty.getPropertyDefinition().getId() != null && extendedProperty .getPropertyDefinition().getId() == PID_LID_TASK_DUE_DATE) { dueDate = (Date) extendedProperty.getValue(); } } final TaskDto task = new TaskDto(); task.setExchangeId(email.getId().getUniqueId()); task.setLastModified(convertToJodaDateTime(email.getLastModifiedTime())); task.setName(email.getSubject()); if (flagValue == null) { throw new RuntimeException("Found email without follow-up flag!"); } else if (flagValue == PR_FLAG_STATUS_FOLLOWUP_COMPLETE) { task.setCompleted(true); } else { LOG.debug("Found flagged email " + email.getSubject()); } task.setDueDate(convertToJodaDateTime(dueDate)); return task; }
mm.setSubject(ewsMessage.getSubject());