public interface RecurringEventUnravellingSession extends OsidSession
This session provides methods for retrieving and expanding
RecurringEvent
s.
This session defines views that offer differing behaviors when retrieving multiple objects.
RecurringEventAdminSession.
Modifier and Type | Method and Description |
---|---|
boolean |
canUnravelRecurringEvents()
Tests if this user can perform
RecurringEvent lookups. |
EventList |
expandRecurringEvent(Id recurringEventId)
Expands the given recurring event into a series of non-recurring
events.
|
EventList |
expandRecurringEventInDateRange(Id recurringEventId,
DateTime from,
DateTime to)
Expands the given recurring event into a series of non-recurring
events that fall within the given date range inclusive.
|
EventList |
expandRecurringEvents(IdList recurringEventIds)
Expands the given recurring events into a series of non-recurring
events.
|
EventList |
expandRecurringEventsInDateRange(Id recurringEventIds,
DateTime from,
DateTime to)
Expands the given recurring events into a series of non-recurring
events that fall within the given date range inclusive.
|
Calendar |
getCalendar()
Gets the
Calendar associated with this session. |
Id |
getCalendarId()
Gets the
Calendar Id associated with
this session. |
long |
getNumberOfEvents(Id recurringEventId)
Gets the number of events in the recurring series.
|
long |
getNumberOfEventsInDateRange(Id recurringEventId,
DateTime from,
DateTime to)
Gets the number of events in the recurring series between the given
dates inclusive.
|
RecurringEvent |
getRecurringEventByEvent(Id eventId)
Gets the recurring event where the given event
Id was
issued as part of the recurring series. |
RecurringEventList |
getRecurringEventsByDate(DateTime datetime)
Gets a list of recurring events where the given date falls within the
span of a recurring event.
|
RecurringEventList |
getRecurringEventsByEvents(IdList eventIds)
Gets a
RecurringEventList corresponding to the given
event IdList where the events were implcitly created
from the recurring series. |
RecurringEventList |
getRecurringEventsInDateRange(DateTime from,
DateTime to)
Gets a
RecurringEventList whose series falls entirely
within the given range inclusive . |
void |
useComparativeRecurringEventView()
The returns from the lookup methods may omit or translate elements
based on this session, such as authorization, and not result in an
error.
|
void |
useFederatedCalendarView()
Federates the view for methods in this session.
|
void |
useIsolatedCalendarView()
Isolates the view for methods in this session.
|
void |
usePlenaryRecurringEventView()
A complete view of the
Event returns is desired. |
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
Id getCalendarId()
Calendar
Id
associated with
this session. Calendar Id
associated with this sessionmandatory
- This method must be implemented. Calendar getCalendar() throws OperationFailedException, PermissionDeniedException
Calendar
associated with this session. Calendar
associated with this sessionOperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. boolean canUnravelRecurringEvents()
RecurringEvent
lookups.
A return of true does not guarantee successful authorization. A return
of false indicates that it is known all methods in this session will
result in a PERMISSION_DENIED.
This is intended as a
hint to an application that may opt not to offer lookup operations to
unauthorized users. false
if lookup methods are not authorized,
true
otherwisemandatory
- This method must be implemented. void useComparativeRecurringEventView()
mandatory
- This method is must be implemented. void usePlenaryRecurringEventView()
Event
returns is desired.
Methods will return what is requested or result in an error. This view
is used when greater precision is desired at the expense of
interoperability.mandatory
- This method is must be implemented. void useFederatedCalendarView()
mandatory
- This method is must be implemented. void useIsolatedCalendarView()
mandatory
- This method is must be implemented. RecurringEvent getRecurringEventByEvent(Id eventId) throws NotFoundException, OperationFailedException, PermissionDeniedException
Id
was
issued as part of the recurring series.eventId
- an event Id
RecurringEvent
NotFoundException
- eventId
is not foundNullArgumentException
- eventId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. RecurringEventList getRecurringEventsByEvents(IdList eventIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
RecurringEventList
corresponding to the given
event IdList
where the events were implcitly created
from the recurring series. In plenary mode, the returned list contains
all of the recurring events corresponding to the events in the
Id
list, in the order of the list, including duplicates, or an
error results if an Id
in the supplied list is not
found or inaccessible. Otherwise, inaccessible Events
may be omitted from the list and may present the elements in any order
including returning a unique set.eventIds
- the list of Ids
to retrieve RecurringEvent
listNotFoundException
- an Id was
not foundNullArgumentException
- eventIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EventList expandRecurringEvent(Id recurringEventId) throws NotFoundException, OperationFailedException, PermissionDeniedException
recurringEventId
- Id
of the recurring
Event
Event list
NotFoundException
- recurringEventId was
not foundNullArgumentException
- recurringEventId
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method is must be implemented. EventList expandRecurringEventInDateRange(Id recurringEventId, DateTime from, DateTime to) throws NotFoundException, OperationFailedException, PermissionDeniedException
recurringEventId
- Id
of the recurring
Event
from
- start dateto
- end date Event list
InvalidArgumentException
- to
is less
than from
NotFoundException
- recurringEventId was
not foundNullArgumentException
- recurringEventId
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method is must be implemented. EventList expandRecurringEvents(IdList recurringEventIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
recurringEventIds
- the list of Ids
to expand Event list
NotFoundException
- an Id was
not foundNullArgumentException
- recurringEventIds
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EventList expandRecurringEventsInDateRange(Id recurringEventIds, DateTime from, DateTime to) throws NotFoundException, OperationFailedException, PermissionDeniedException
recurringEventIds
- the list of Ids
to expandfrom
- start dateto
- end date Event list
InvalidArgumentException
- to
is less
than from
NotFoundException
- an Id was
not foundNullArgumentException
- recurringEventIds
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method is must be implemented. RecurringEventList getRecurringEventsByDate(DateTime datetime) throws OperationFailedException, PermissionDeniedException
In plenary mode, the
returned list contains all known events or an error results.
Otherwise, the returned list may contain only those events that are
accessible through this session. In both cases, the order of the set
is not specified.datetime
- a date RecurringEvent
listNullArgumentException
- datetime
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. RecurringEventList getRecurringEventsInDateRange(DateTime from, DateTime to) throws OperationFailedException, PermissionDeniedException
RecurringEventList
whose series falls entirely
within the given range inclusive .
In plenary mode, the
returned list contains all known recurring events or an error results.
Otherwise, the returned list may contain only those recurring events
that are accessible through this session. In both cases, the order of
the set is not specified.from
- start dateto
- end date RecurringEvent
listInvalidArgumentException
- to
is less
than from
NullArgumentException
- from
or
to
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. long getNumberOfEvents(Id recurringEventId) throws NotFoundException, OperationFailedException, PermissionDeniedException
recurringEventId
- Id
of the recurring
Event
NotFoundException
- recurringEventId was
not foundNullArgumentException
- recurringEventId
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method is must be implemented. long getNumberOfEventsInDateRange(Id recurringEventId, DateTime from, DateTime to) throws NotFoundException, OperationFailedException, PermissionDeniedException
recurringEventId
- Id
of the recurring
Event
from
- start dateto
- end dateInvalidArgumentException
- to
is less
than from
NotFoundException
- recurringEventId was
not foundNullArgumentException
- recurringEventId
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method is must be implemented.