Interface TimePeriodLookupSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session provides methods for retrieving TimePeriod
objects. The TimePeriod represents a period of time in which to
manage recurring events.
This session defines views that offer differing behaviors when retrieving multiple objects.
- comparative view: elements may be silently omitted or re-ordered
- plenary view: provides a complete set or is an error condition
- isolated calendar view: All time period methods in this session
operate, retrieve and pertain to time periods defined explicitly in
the current calendar. Using an isolated view is useful for managing
time periods with the
TimePeriodAdminSession. - federated calendar view: All time period methods in this session operate, retrieve and pertain to all time periods defined in this calendar and any other calendars implicitly available in this calendar through calendar inheritence.
Time periods may have an additional records indicated by their
respective record types. The record may not be accessed through a cast of
the TimePeriod .
-
Method Summary
Modifier and TypeMethodDescriptionbooleanTests if this user can performTimePeriodlookups.Gets theCalendarassociated with this session.Gets theCalendarIdassociated with this session.getTimePeriod(Id timePeriodId) Gets theTimePeriodspecified by itsId.Gets allTimePeriods.getTimePeriodsByDate(DateTime datetime) Gets aTimePeriodListcontaining the givenDateTime.getTimePeriodsByGenusType(Type timePeriodGenusType) Gets aTimePeriodListcorresponding to the given time period genusTypewhich does not include time periods of genus types derived from the specifiedType.getTimePeriodsByIds(IdList timePeriodIds) Gets aTimePeriodListcorresponding to the givenIdList.In plenary mode, the returned list contains all of the time periods specified in theIdlist, in the order of the list, including duplicates, or an error results if anIdin the supplied list is not found or inaccessible.getTimePeriodsByParentGenusType(Type timePeriodGenusType) Gets aTimePeriodListcorresponding to the given time period genusTypeand include any additional time periods with genus types derived from the specifiedType.getTimePeriodsByRecordType(Type timePeriodRecordType) Gets aTimePeriodListcontaining the given time period recordType.In plenary mode, the returned list contains all known time periods or an error results.getTimePeriodsInDateRange(DateTime start, DateTime end) Gets aTimePeriodListcorresponding to the givenDateTime.voidThe returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error.voidFederates the view for methods in this session.voidIsolates the view for methods in this session.voidA complete view of theTimePeriodreturns is desired.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionsModifier and TypeMethodDescriptionGets the agent authenticated to this session.Gets theIdof the agent authenticated to this session.Gets the rate of the service clock.getDate()Gets the service date which may be the current date or the effective date in which this session exists.Gets the effective agent in use by this session.Gets theIdof the effective agent in use by this session.Gets theDisplayTextformatTypepreference in effect for this session.Gets the locale indicating the localization preferences in effect for this session.booleanTests if an agent is authenticated to this session.Starts a new transaction for this sesson.booleanTests for the availability of transactions.
-
Method Details
-
getCalendarId
Id getCalendarId()Gets theCalendarIdassociated with this session.- Returns:
- the
Calendar Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getCalendar
Gets theCalendarassociated with this session.- Returns:
- the
Calendarassociated with this session - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canLookupTimePeriods
boolean canLookupTimePeriods()Tests if this user can performTimePeriodlookups. 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 aPERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.- Returns:
falseif lookup methods are not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
useComparativeTimePeriodView
void useComparativeTimePeriodView()The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.- Compliance:
mandatory- This method is must be implemented.
-
usePlenaryTimePeriodView
void usePlenaryTimePeriodView()A complete view of theTimePeriodreturns 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.- Compliance:
mandatory- This method is must be implemented.
-
useFederatedCalendarView
void useFederatedCalendarView()Federates the view for methods in this session. A federated view will include time periods in calendars which are children of this calendar in the calendar hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedCalendarView
void useIsolatedCalendarView()Isolates the view for methods in this session. An isolated view restricts lookups to this calendar only.- Compliance:
mandatory- This method is must be implemented.
-
getTimePeriod
TimePeriod getTimePeriod(Id timePeriodId) throws NotFoundException, OperationFailedException, PermissionDeniedException Gets theTimePeriodspecified by itsId. In plenary mode, the exactIdis found or aNOT_FOUNDresults. Otherwise, the returnedTimePeriodmay have a differentIdthan requested, such as the case where a duplicateIdwas assigned to aTimePeriodand retained for compatibility.- Parameters:
timePeriodId-Idof theTimePeriod- Returns:
- the time period
- Throws:
NotFoundException-timePeriodIdnot foundNullArgumentException-timePeriodIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method is must be implemented.
-
getTimePeriodsByIds
TimePeriodList getTimePeriodsByIds(IdList timePeriodIds) throws NotFoundException, OperationFailedException, PermissionDeniedException Gets aTimePeriodListcorresponding to the givenIdList.In plenary mode, the returned list contains all of the time periods specified in theIdlist, in the order of the list, including duplicates, or an error results if anIdin the supplied list is not found or inaccessible. Otherwise, inaccessibleTimePeriodsmay be omitted from the list and may present the elements in any order including returning a unique set.- Parameters:
timePeriodIds- the list ofIdsto retrieve- Returns:
- the returned
TimePeriodlist - Throws:
NotFoundException- anId wasnot foundNullArgumentException-rimePeriodIdsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getTimePeriodsByGenusType
TimePeriodList getTimePeriodsByGenusType(Type timePeriodGenusType) throws OperationFailedException, PermissionDeniedException Gets aTimePeriodListcorresponding to the given time period genusTypewhich does not include time periods of genus types derived from the specifiedType. In plenary mode, the returned list contains all known time periods or an error results. Otherwise, the returned list may contain only those time periods that are accessible through this session.- Parameters:
timePeriodGenusType- a time period genus type- Returns:
- the returned
TimePeriodlist - Throws:
NullArgumentException-timePeriodGenusTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getTimePeriodsByParentGenusType
TimePeriodList getTimePeriodsByParentGenusType(Type timePeriodGenusType) throws OperationFailedException, PermissionDeniedException Gets aTimePeriodListcorresponding to the given time period genusTypeand include any additional time periods with genus types derived from the specifiedType. In plenary mode, the returned list contains all known time periods or an error results. Otherwise, the returned list may contain only those time periods that are accessible through this session.- Parameters:
timePeriodGenusType- a time period genus type- Returns:
- the returned
TimePeriodlist - Throws:
NullArgumentException-timePeriodGenusTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getTimePeriodsByRecordType
TimePeriodList getTimePeriodsByRecordType(Type timePeriodRecordType) throws OperationFailedException, PermissionDeniedException Gets aTimePeriodListcontaining the given time period recordType.In plenary mode, the returned list contains all known time periods or an error results. Otherwise, the returned list may contain only those time periods that are accessible through this session.- Parameters:
timePeriodRecordType- a time period record type- Returns:
- the returned
TimePeriodlist - Throws:
NullArgumentException-timePeriodRecordTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getTimePeriodsByDate
TimePeriodList getTimePeriodsByDate(DateTime datetime) throws OperationFailedException, PermissionDeniedException Gets aTimePeriodListcontaining the givenDateTime. Time periods containing the given date are matched. In plenary mode, the returned list contains all of the time periods specified in theIdlist, in the order of the list, including duplicates, or an error results if anIdin the supplied list is not found or inaccessible. Otherwise, inaccessibleTimePeriodsmay be omitted from the list and may present the elements in any order including returning a unique set.- Parameters:
datetime- a date- Returns:
- the returned
TimePeriodlist - Throws:
NullArgumentException-datetimeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getTimePeriodsInDateRange
TimePeriodList getTimePeriodsInDateRange(DateTime start, DateTime end) throws OperationFailedException, PermissionDeniedException Gets aTimePeriodListcorresponding to the givenDateTime. Time periods whose start end end times are included in the given date range are matched.In plenary mode, the returned list contains all of the time periods specified in theIdlist, in the order of the list, including duplicates, or an error results if anIdin the supplied list is not found or inaccessible. Otherwise, inaccessibleTimePeriodsmay be omitted from the list and may present the elements in any order including returning a unique set.- Parameters:
start- start of daterangeend- end of date range- Returns:
- the returned
TimePeriodlist - Throws:
InvalidArgumentException-endis less thanstartNullArgumentException-startorendisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getTimePeriods
Gets allTimePeriods. In plenary mode, the returned list contains all known time periods or an error results. Otherwise, the returned list may contain only those time periods that are accessible through this session.- Returns:
- a
TimePeriodList - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-