public interface MessagingConnector extends Component
Modifier and Type | Interface and Description |
---|---|
static class |
MessagingConnector.AttendeeInformation
Internal class for attendee information
|
static class |
MessagingConnector.FreeBusyStatus
Enum for free/busy status
|
static class |
MessagingConnector.ResponseType
Enum for answer status
|
Modifier and Type | Method and Description |
---|---|
String |
createEvent(String title,
String description,
String place,
boolean isAllDay,
Date startDate,
Date endDate,
EventRecurrenceTypeEnum recurrenceType,
Date untilDate,
Map<String,Boolean> attendees,
UserIdentity organiser)
Create an event
|
void |
deleteEvent(String eventId,
UserIdentity organiser)
Delete an event
|
List<String> |
getAllowedPopulationIds()
Get the list of population id allowed to the messaging connector
|
Map<String,MessagingConnector.AttendeeInformation> |
getAttendees(String eventId,
UserIdentity organiser)
Get the map of attendees for an event
|
List<CalendarEvent> |
getEvents(UserIdentity userIdentity,
int maxDays,
int maxEvents)
Get the list of upcoming events from now for a given user
|
int |
getEventsCount(UserIdentity userIdentity,
int maxDays)
Return the number of upcoming events
|
Map<String,MessagingConnector.FreeBusyStatus> |
getFreeBusy(Date startDate,
Date endDate,
boolean isAllDay,
Set<String> attendees,
UserIdentity organiser)
Get free/busy status for attendees for a time window
|
int |
getUnreadEmailCount(UserIdentity userIdentity)
Return the number of unread mails for a given user
|
List<EmailMessage> |
getUnreadEmails(UserIdentity userIdentity,
int maxEmails)
Return the unread emails for a given user
|
boolean |
isEventExist(String eventId,
UserIdentity organiser)
True if the event exist in the messaging connector
|
boolean |
isUserExist(UserIdentity userIdentity)
True if the user exist
|
void |
setAttendees(String eventId,
Map<String,Boolean> attendees,
UserIdentity organiser)
Set attendees for an event
|
void |
setUserPassword(UserIdentity userIdentity,
String password)
Set a new password for the user
|
boolean |
supportInvitation()
Tell if the messaging connector supports event invitation
|
boolean |
supportUserCredential()
Check if a user credential should be saved
|
void |
updateEvent(String eventId,
String title,
String description,
String place,
boolean isAllDay,
Date startDate,
Date endDate,
EventRecurrenceTypeEnum recurrenceType,
Date untilDate,
Map<String,Boolean> attendees,
UserIdentity organiser)
Update an event
|
boolean |
userCredentialNeeded()
Check if the service needs user credential (some implementation can use a central API key or impersonation, some don't)
|
List<String> getAllowedPopulationIds()
List<CalendarEvent> getEvents(UserIdentity userIdentity, int maxDays, int maxEvents) throws MessagingConnectorException
userIdentity
- the owner of the eventsmaxDays
- The maximum number of days to search for from nowmaxEvents
- the maximum number of events to retrieveMessagingConnectorException
- if failed to get eventsint getEventsCount(UserIdentity userIdentity, int maxDays) throws MessagingConnectorException
userIdentity
- the owner of the eventsmaxDays
- The maximum number of days to search for from nowMessagingConnectorException
- if failed to get events' countList<EmailMessage> getUnreadEmails(UserIdentity userIdentity, int maxEmails) throws MessagingConnectorException
userIdentity
- the recipient of the mailsmaxEmails
- The max number of emails to returnMessagingConnectorException
- if failed to get mailsint getUnreadEmailCount(UserIdentity userIdentity) throws MessagingConnectorException
userIdentity
- the receiver of the mailsMessagingConnectorException
- if failed to get unread mails ' countboolean supportInvitation() throws MessagingConnectorException
MessagingConnectorException
- if failed to get events from serverboolean isEventExist(String eventId, UserIdentity organiser) throws MessagingConnectorException
eventId
- the event idorganiser
- the organiserMessagingConnectorException
- if an error occurredString createEvent(String title, String description, String place, boolean isAllDay, Date startDate, Date endDate, EventRecurrenceTypeEnum recurrenceType, Date untilDate, Map<String,Boolean> attendees, UserIdentity organiser) throws MessagingConnectorException
title
- the event titledescription
- the event descriptionplace
- the event placeisAllDay
- if the event is all daystartDate
- the event start dateendDate
- the event end daterecurrenceType
- recurrence typeuntilDate
- until date of the recurring eventattendees
- the map of attendees (email -> optional or requested) to setorganiser
- the event organiserMessagingConnectorException
- if failed to get events from servervoid updateEvent(String eventId, String title, String description, String place, boolean isAllDay, Date startDate, Date endDate, EventRecurrenceTypeEnum recurrenceType, Date untilDate, Map<String,Boolean> attendees, UserIdentity organiser) throws MessagingConnectorException
eventId
- the event id to deletetitle
- the event titledescription
- the event descriptionplace
- the event placeisAllDay
- if the event is all daystartDate
- the event start dateendDate
- the event end daterecurrenceType
- recurrence typeuntilDate
- until date of the recurring eventattendees
- the map of attendees (email -> optional or requested) to setorganiser
- the event organiserMessagingConnectorException
- if failed to get events from servervoid deleteEvent(String eventId, UserIdentity organiser) throws MessagingConnectorException
eventId
- the event id to deleteorganiser
- the event organiserMessagingConnectorException
- if failed to get events from serverMap<String,MessagingConnector.AttendeeInformation> getAttendees(String eventId, UserIdentity organiser) throws MessagingConnectorException
eventId
- the event idorganiser
- the event organiserMessagingConnectorException
- if failed to get events from servervoid setAttendees(String eventId, Map<String,Boolean> attendees, UserIdentity organiser) throws MessagingConnectorException
eventId
- the event idattendees
- the map of attendees (email -> optional or requested) to setorganiser
- the event organiserMessagingConnectorException
- if failed to get events from serverMap<String,MessagingConnector.FreeBusyStatus> getFreeBusy(Date startDate, Date endDate, boolean isAllDay, Set<String> attendees, UserIdentity organiser) throws MessagingConnectorException
startDate
- the start dateendDate
- the end dateisAllDay
- true if is an allday eventattendees
- the list of attendees emailorganiser
- the event organiserMessagingConnectorException
- if failed to get events from serverboolean isUserExist(UserIdentity userIdentity) throws MessagingConnectorException
userIdentity
- the user identityMessagingConnectorException
- if failed to get events from serverboolean userCredentialNeeded()
boolean supportUserCredential()
void setUserPassword(UserIdentity userIdentity, String password) throws UserPreferencesException, MessagingConnectorException
userIdentity
- user that have a password changepassword
- new passwordUserPreferencesException
- An exception occured while saving the passwordMessagingConnectorException
- Thrown when the messaging connector does not support user credentials