Oracle

com.compoze.collab.exchange
Interface IExchangeAppointment

All Superinterfaces:
IAppointment, IAttachmentSupport, ICalendarItem, IExchangeCalendarItem, IExchangeItem, IGroupwareItem, IItem, com.compoze.collab.messaging.IMessagingItem, java.io.Serializable
All Known Subinterfaces:
IMapiAppointment

public interface IExchangeAppointment
extends IAppointment, IExchangeCalendarItem

This interface is used to represent appointments in exchange. Operations for instances of IExchangeAppointment require at least the following properties:

These properties are required due to inter-dependencies with all day events, recurrence patterns and start/end times.


Field Summary
static Key ASSOCIATED_MASTER
          The key representing the ID of the master appointment associated with an instance.
static ItemClass CLASS
          The ItemClass that represents an Exchange appointment.
static Key INSTANCE_TYPE
          The key representing the instance type.
static int KEYID_ASSOCIATED_MASTER
          The int ID for the ASSOCIATED_MASTER key.
static int KEYID_INSTANCE_TYPE
          The int ID for the INSTANCE_TYPE key.
static int KEYID_ORGANIZER_NAME
          The int ID for the ORGANIZER_NAME key.
static int KEYID_SENT_DATE
          The int ID for the SENT_DATE key.
static Key ORGANIZER_NAME
          The key representing the display name of the organizer for this appointment.
static Key SENT_DATE
          The key representing the date that the meeting was sent.
 
Fields inherited from interface com.compoze.collab.groupware.ICalendarItem
BUSY_STATUS, DURATION, END_TIME, IS_ALL_DAY, IS_RECURRING, KEYID_BUSY_STATUS, KEYID_DURATION, KEYID_END_TIME, KEYID_IS_ALL_DAY, KEYID_IS_RECURRING, KEYID_LOCATION, KEYID_START_TIME, LOCATION, START_TIME
 
Fields inherited from interface com.compoze.collab.groupware.IGroupwareItem
CATEGORIES, DATE_CREATED, DATE_LAST_MODIFIED, IMPORTANCE, KEYID_CATEGORIES, KEYID_DATE_CREATED, KEYID_DATE_LAST_MODIFIED, KEYID_IMPORTANCE, KEYID_SIZE, KEYID_SUBJECT, SIZE, SUBJECT
 
Fields inherited from interface com.compoze.collab.messaging.IMessagingItem
BODY, BODY_HTML, KEYID_BODY, KEYID_BODY_HTML
 
Fields inherited from interface com.compoze.collab.IItem
ID, ITEM_CLASS, KEYID_ID, KEYID_ITEM_CLASS, KEYID_PARENT_ID, MINIMUM_ITEM_KEYS, PARENT_ID
 
Fields inherited from interface com.compoze.collab.exchange.IExchangeCalendarItem
ASSOCIATED_APPOINTMENT_LINK, ASSOCIATED_INSTANCE_LINK, IS_RESPONSE_REQUESTED, KEYID_ASSOCIATED_APPOINTMENT_LINK, KEYID_ASSOCIATED_INSTANCE_LINK, KEYID_IS_RESPONSE_REQUESTED, KEYID_MEETING_RESPONSE_STATUS, KEYID_MEETING_STATUS, KEYID_RECURRENCE_PATTERN, KEYID_REMINDER_MINUTES_BEFORE_START, KEYID_REPLY_TIME, KEYID_TIMEZONE_INFO, KEYID_TIMEZONE_STRING, MEETING_RESPONSE_STATUS, MEETING_STATUS, RECURRENCE_PATTERN, REMINDER_MINUTES_BEFORE_START, REPLY_TIME, TIMEZONE_INFO, TIMEZONE_STRING
 
Fields inherited from interface com.compoze.collab.exchange.IExchangeItem
CONTACT_NAMES, CREATOR_ENTRYID, FLAG, FLAG_REMIND_BY, FLAG_TEXT, HAS_REMINDER, HIDE_ATTACHMENTS, ICON_INDEX, IS_HIDDEN, KEYID_CONTACT_NAMES, KEYID_CREATOR_ENTRYID, KEYID_FLAG, KEYID_FLAG_REMIND_BY, KEYID_FLAG_TEXT, KEYID_HAS_REMINDER, KEYID_HIDE_ATTACHMENTS, KEYID_ICON_INDEX, KEYID_IS_HIDDEN, KEYID_MILEAGE, KEYID_NORMALIZED_SUBJECT, KEYID_PRIORITY, KEYID_SENSITIVITY, KEYID_SUBJECT_PREFIX, MILEAGE, NORMALIZED_SUBJECT, PRIORITY, SENSITIVITY, SUBJECT_PREFIX
 
Fields inherited from interface com.compoze.collab.IAttachmentSupport
ATTACHMENTS, HAS_ATTACHMENT, KEYID_ATTACHMENTS, KEYID_HAS_ATTACHMENT
 
Fields inherited from interface com.compoze.collab.groupware.ICalendarItem
BUSY_STATUS, DURATION, END_TIME, IS_ALL_DAY, IS_RECURRING, KEYID_BUSY_STATUS, KEYID_DURATION, KEYID_END_TIME, KEYID_IS_ALL_DAY, KEYID_IS_RECURRING, KEYID_LOCATION, KEYID_START_TIME, LOCATION, START_TIME
 
Fields inherited from interface com.compoze.collab.groupware.IGroupwareItem
CATEGORIES, DATE_CREATED, DATE_LAST_MODIFIED, IMPORTANCE, KEYID_CATEGORIES, KEYID_DATE_CREATED, KEYID_DATE_LAST_MODIFIED, KEYID_IMPORTANCE, KEYID_SIZE, KEYID_SUBJECT, SIZE, SUBJECT
 
Fields inherited from interface com.compoze.collab.messaging.IMessagingItem
BODY, BODY_HTML, KEYID_BODY, KEYID_BODY_HTML
 
Fields inherited from interface com.compoze.collab.IItem
ID, ITEM_CLASS, KEYID_ID, KEYID_ITEM_CLASS, KEYID_PARENT_ID, MINIMUM_ITEM_KEYS, PARENT_ID
 
Method Summary
 IMeetingCancellation cancel()
          Cancels the appointment, if isMeeting returns true.
 IMeetingCancellation cancel(IMailContainer container)
          Cancels the appointment, if isMeeting returns true.
 IMeetingRequest createMeetingRequest(IMailContainer container)
          Creates a meeting request for this appointment.
 InstanceType getInstanceType()
          Gets the instance type of the appointment.
 IMailRecipient[] getOptionalAttendees()
          Gets the invitees of a meeting that are optional to attend.
 IExchangeAddressEntry getOrganizer()
          Gets the organizer of the appointment.
 java.lang.String getOrganizerName()
          Gets the display name of the organizer for an appointment.
 IMailRecipient[] getRequiredAttendees()
          Gets the invitees of a meeting that are required to attend.
 IMailRecipient[] getResources()
          Gets the resources that are scheduled to be booked for a meeting.
 java.util.Date getSentDate()
          Gets the date that this meeting was sent to the attendees.
 IExchangeAppointment getSeries()
          Gets the 'series' appointment for this appointment, if it is recurring.
 IExchangeAppointment getSeries(FetchProfile profile)
          Gets the 'series' appointment for this appointment, if it is recurring.
 boolean isMeeting()
          Gets whether this appointment is a meeting.
 boolean isOrganizer()
          Gets if the Exchange account associated with the ISession is the creator, also known as the organizer, of a meeting.
 boolean isSpanning()
          Gets whether this appointment is spanning.
 void setAllDayEvent(boolean bAllDayEvent)
          Setting an Exchange appointment to an all day event will use the existing start and end dates.
 void setRecurrencePattern(AppointmentRecurrencePattern pattern, ExchangeTimeZone timezone)
          Sets the recurrence pattern on the appointment.
 
Methods inherited from interface com.compoze.collab.groupware.IAppointment
cancel, setAllDayEvent, setBusyStatus, setDates, setLocation
 
Methods inherited from interface com.compoze.collab.groupware.ICalendarItem
getBusyStatus, getDuration, getEndTime, getLocation, getStartTime, isAllDayEvent, isRecurring
 
Methods inherited from interface com.compoze.collab.groupware.IGroupwareItem
getBodyHtml, getBodyHtml, getCategories, getDateCreated, getDateLastModified, getImportance, getNormalizedSubject, getSize, getSubject, getSubject, getSubjectPrefix, setBodyHtml, setCategories, setImportance, setSubject
 
Methods inherited from interface com.compoze.collab.messaging.IMessagingItem
getBody, setBody
 
Methods inherited from interface com.compoze.collab.IItem
commit, containsKey, containsKey, copyProperties, copyTo, delete, fetchProperties, getAttribute, getEnum, getID, getInputStream, getItemClass, getOutputStream, getParent, getParent, getParentID, getProperties, getProperties, getProperties, getProperty, getProperty, getProperty, getReader, getRootContainer, getSession, getWriter, isMissing, moveTo, removeAttribute, removeProperty, setAttribute, setProperties, setProperty, setProperty, setProperty
 
Methods inherited from interface com.compoze.collab.exchange.IExchangeCalendarItem
getExchangeTimeZone, getMeetingStatus, getRecurrencePattern, isRecurring
 
Methods inherited from interface com.compoze.collab.exchange.IExchangeItem
getContactNames, getFlagStatus, getFlagText, getHideAttachments, getMileage, getPriority, getSensitivity, getSubjectPrefix, isHidden, setContactNames, setFlagStatus, setFlagText, setHideAttachments, setMileage, setPriority, setSensitivity, setSubjectPrefix
 
Methods inherited from interface com.compoze.collab.IAttachmentSupport
addAttachment, getAttachment, getAttachmentCount, getAttachments, hasAttachment
 
Methods inherited from interface com.compoze.collab.groupware.ICalendarItem
getBusyStatus, getDuration, getEndTime, getLocation, getStartTime, isAllDayEvent, isRecurring
 
Methods inherited from interface com.compoze.collab.groupware.IGroupwareItem
getBodyHtml, getBodyHtml, getCategories, getDateCreated, getDateLastModified, getImportance, getNormalizedSubject, getSize, getSubject, getSubject, getSubjectPrefix, setBodyHtml, setCategories, setImportance, setSubject
 
Methods inherited from interface com.compoze.collab.messaging.IMessagingItem
getBody, setBody
 
Methods inherited from interface com.compoze.collab.IItem
commit, containsKey, containsKey, copyProperties, copyTo, delete, fetchProperties, getAttribute, getEnum, getID, getInputStream, getItemClass, getOutputStream, getParent, getParent, getParentID, getProperties, getProperties, getProperties, getProperty, getProperty, getProperty, getReader, getRootContainer, getSession, getWriter, isMissing, moveTo, removeAttribute, removeProperty, setAttribute, setProperties, setProperty, setProperty, setProperty
 

Field Detail

KEYID_ASSOCIATED_MASTER

static final int KEYID_ASSOCIATED_MASTER
The int ID for the ASSOCIATED_MASTER key.

See Also:
Constant Field Values

KEYID_ORGANIZER_NAME

static final int KEYID_ORGANIZER_NAME
The int ID for the ORGANIZER_NAME key.

See Also:
Constant Field Values

KEYID_SENT_DATE

static final int KEYID_SENT_DATE
The int ID for the SENT_DATE key.

See Also:
Constant Field Values

KEYID_INSTANCE_TYPE

static final int KEYID_INSTANCE_TYPE
The int ID for the INSTANCE_TYPE key.

See Also:
Constant Field Values

ASSOCIATED_MASTER

static final Key ASSOCIATED_MASTER
The key representing the ID of the master appointment associated with an instance.


ORGANIZER_NAME

static final Key ORGANIZER_NAME
The key representing the display name of the organizer for this appointment. This key is read-only.


SENT_DATE

static final Key SENT_DATE
The key representing the date that the meeting was sent. This key is read-only.


INSTANCE_TYPE

static final Key INSTANCE_TYPE
The key representing the instance type. This key is read-only.


CLASS

static final ItemClass CLASS
The ItemClass that represents an Exchange appointment.

Method Detail

cancel

IMeetingCancellation cancel()
                            throws CollaborationException
Cancels the appointment, if isMeeting returns true. Creates a meeting cancellation in the default drafts folder.

Returns:
a cancellation notice that can be sent to invitees of the meeting.
Throws:
CollaborationException - if there was an error canceling the appointment
See Also:
isMeeting(), IExchangeCalendarItem.ASSOCIATED_APPOINTMENT_LINK

cancel

IMeetingCancellation cancel(IMailContainer container)
                            throws CollaborationException
Cancels the appointment, if isMeeting returns true. Creates a meeting cancellation in the specified folder. The appointment is not removed from the calendar after this method is finished executing. To remove it from the calendar, delete it manually.

Parameters:
container - the container to write the IMeetingCancellation to.
Returns:
a cancellation notice that can be sent to invitees of the meeting.
Throws:
CollaborationException - if there was an error canceling the appointment
See Also:
isMeeting(), IMessage.RECIPIENTS, IExchangeCalendarItem.ASSOCIATED_APPOINTMENT_LINK, IItem.delete()

isMeeting

boolean isMeeting()
                  throws CollaborationException
Gets whether this appointment is a meeting.

Returns:
true if this appointment is a meeting, false otherwise.
Throws:
CollaborationException - if there was an error determining if this appointment is a meeting
See Also:
IExchangeCalendarItem.MEETING_STATUS

setRecurrencePattern

void setRecurrencePattern(AppointmentRecurrencePattern pattern,
                          ExchangeTimeZone timezone)
                          throws CollaborationException
Sets the recurrence pattern on the appointment. NOTE: Setting the pattern will invalidate setting the start or end time for the appointment, as well as replace any pattern already existing on the appointment.

If setting the pattern to AppointmentRecurrencePattern.NONE, the IS_RECURRING becomes false, otherwise, IS_RECURRING becomes true.

Parameters:
pattern - the pattern to set. A value of null implies AppointmentRecurrencePattern.NONE.
timezone - the exchange timezone (not null)
Throws:
CollaborationException - if there was an error setting the pattern

isSpanning

boolean isSpanning()
                   throws CollaborationException
Gets whether this appointment is spanning. Spanning appointments have a duration of at least 24 hours. However, appointments that are exactly 24 hours long from midnight are considered as All Day Events.

Returns:
true if this appointment has a duration of at least 24 hours, but is not an all day event, false otherwise.
Throws:
CollaborationException - if there was a problem determining if the appointment is spanning.
See Also:
ICalendarItem.DURATION, ICalendarItem.START_TIME

getSeries

IExchangeAppointment getSeries()
                               throws CollaborationException
Gets the 'series' appointment for this appointment, if it is recurring. Requires the fields in See Also. Uses the default keys for an IExchangeAppointment to fetch the 'series' appointment.

Returns:
the series, or null if the appointment is not recurring.
Throws:
CollaborationException - if there was an error getting the series.
See Also:
ICalendarItem.IS_RECURRING, ASSOCIATED_MASTER

getSeries

IExchangeAppointment getSeries(FetchProfile profile)
                               throws CollaborationException
Gets the 'series' appointment for this appointment, if it is recurring. Requires the field in See Also.

Parameters:
profile - the fetch profile to get the series.
Returns:
the series, or null if the appointment is not recurring
Throws:
CollaborationException - if there was an error getting the series
See Also:
ICalendarItem.IS_RECURRING, ASSOCIATED_MASTER

createMeetingRequest

IMeetingRequest createMeetingRequest(IMailContainer container)
                                     throws CollaborationException
Creates a meeting request for this appointment. See See Also section for required keys.

Parameters:
container - the container to create the "draft" meeting request in (not null).
Returns:
a meeting request for this appointment
Throws:
CollaborationException - if there was a problem creating a meeting request for this appointment in the specified folder.
See Also:
ICalendarItem.BUSY_STATUS, IExchangeCalendarItem.ASSOCIATED_APPOINTMENT_LINK

setAllDayEvent

void setAllDayEvent(boolean bAllDayEvent)
                    throws CollaborationException
Setting an Exchange appointment to an all day event will use the existing start and end dates. Changing an appointment from an all day event will use the start date and set the appointment times from 8:00 AM to 8:30 AM. Specifying start and end dates on different days will force the all day dates for those days.

Specified by:
setAllDayEvent in interface IAppointment
Parameters:
bAllDayEvent - if true, sets this appointment as an All Day Event. If false, then removes the All Day Event flag from this appointment.
Throws:
CollaborationException - if there was a problem setting the all day event flag.
See Also:
ICalendarItem.START_TIME, ICalendarItem.END_TIME

getOrganizer

IExchangeAddressEntry getOrganizer()
                                   throws CollaborationException
Gets the organizer of the appointment. Retrieving this property could require numerous hits to the Exchange server. It is recommended that this method should be used infrequently. Instead, use the ORGANIZER_NAME field to retrieve the organizer on more than one appointment.

Retriving the organizer is only valid on appointments that are meetings.

Returns:
the address entry of the organizer, or null if this appointment is not a meeting or the organizer could not be found in the GAL.
Throws:
CollaborationException - if there was an error getting the organizer
See Also:
isMeeting()

getOrganizerName

java.lang.String getOrganizerName()
                                  throws CollaborationException
Gets the display name of the organizer for an appointment. Retriving the organizer name is only valid on appointments that are meetings.

Returns:
the display name of the organizer, or null if this appointment is not a meeting.
Throws:
CollaborationException - if there was an error getting the organizer's name.
See Also:
isMeeting(), ORGANIZER_NAME

isOrganizer

boolean isOrganizer()
                    throws CollaborationException
Gets if the Exchange account associated with the ISession is the creator, also known as the organizer, of a meeting. This method may impact performance due to the calculations involved and the specific provider being used. Retrieving this property on a non-meeting will return true.

Returns:
true if the current session's Exchange account is the organizer of the meeting or the appointment is not a meeting, false otherwise.
Throws:
CollaborationException - if there was an error retrieving the associated Exchange account or the organizer of the meeting, or the appointment is not a meeting.
See Also:
isMeeting()

getRequiredAttendees

IMailRecipient[] getRequiredAttendees()
                                      throws CollaborationException
Gets the invitees of a meeting that are required to attend. The IMessage.RECIPIENTS key is required for this method. For some Exchange providers, this key may be an expensive call and should not be used in bulk in order to prevent performance issues.

Returns:
the required attendees of the meeting.
Throws:
CollaborationException - if there was a problem retrieving the required attendees.
See Also:
IMessage.RECIPIENTS, isMeeting()

getOptionalAttendees

IMailRecipient[] getOptionalAttendees()
                                      throws CollaborationException
Gets the invitees of a meeting that are optional to attend. The IMessage.RECIPIENTS key is required for this method. For some Exchange providers, this key may be an expensive call and should not be used in bulk in order to prevent performance issues.

Returns:
the optional attendees of the meeting.
Throws:
CollaborationException - if there was a problem retrieving the optional attendees.
See Also:
IMessage.RECIPIENTS, isMeeting()

getResources

IMailRecipient[] getResources()
                              throws CollaborationException
Gets the resources that are scheduled to be booked for a meeting. The IMessage.RECIPIENTS key is required for this method. For some Exchange providers, this key may be an expensive call and should not be used in bulk in order to prevent performance issues.

Returns:
the booked resources of the meeting.
Throws:
CollaborationException - if there was a problem retrieving the resources.
See Also:
IMessage.RECIPIENTS, isMeeting()

getSentDate

java.util.Date getSentDate()
                           throws CollaborationException
Gets the date that this meeting was sent to the attendees.

Returns:
the date that this meeting was sent, or null if this is not a meeting.
Throws:
CollaborationException - if there was a problem retrieving the sent date.
See Also:
SENT_DATE, isMeeting()

getInstanceType

InstanceType getInstanceType()
                             throws CollaborationException
Gets the instance type of the appointment.

Returns:
the instance type
Throws:
CollaborationException - if there was an error getting the type.
See Also:
INSTANCE_TYPE

Oracle

Copyright ©1999-2008 Oracle All rights reserved.