OSID Logo
OSID Specifications
calendaring package
Version 3.0.0
Release Candidate Preview
Interfaceosid.calendaring.ScheduleCalendarAssignmentSession
Implementsosid.OsidSession
Description

This session provides methods to re-assign Schedules to Calendars. A Schedule may map to multiple Calendars and removing the last reference to a Schedule is the equivalent of deleting it. Each Calendar may have its own authorizations governing who is allowed to operate on it.

Moving or adding a reference of a Schedule to another Calendar is not a copy operation (eg: does not change its Id ).

MethodcanAssignSchedules
Description

Tests if this user can alter schedule/calendar mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping 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 assignment operations to unauthorized users.

Returnboolean false if mapping is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodcanAssignSchedulesToCalendar
Description

Tests if this user can alter schedule/calendar mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping 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 assignment operations to unauthorized users.

Parametersosid.id.IdcalendarIdthe Id of the Calendar
Returnboolean false if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENT calendarId is null
CompliancemandatoryThis method must be implemented.
MethodgetAssignableCalendarIds
Description

Gets a list of calendars including and under the given calendar node in which any schedule can be assigned.

Parametersosid.id.IdcalendarIdthe Id of the Calendar
Returnosid.id.IdListlist of assignable calendar Ids
ErrorsNULL_ARGUMENT calendarId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodgetAssignableCalendarIdsForSchedule
Description

Gets a list of calendars including and under the given calendar node in which a specific schedule can be assigned.

Parametersosid.id.IdcalendarIdthe Id of the Calendar
osid.id.IdscheduleIdthe Id of the Schedule
Returnosid.id.IdListlist of assignable calendar Ids
ErrorsNULL_ARGUMENT calendarId or scheduleId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignScheduleToCalendar
Description

Adds an existing Schedule to a Calendar.

Parametersosid.id.IdscheduleIdthe Id of the Schedule
osid.id.IdcalendarIdthe Id of the Calendar
ErrorsALREADY_EXISTS scheduleId is already assigned to calendarId
NOT_FOUND scheduleId or calendarId not found
NULL_ARGUMENT scheduleId or calendarId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignScheduleFromCalendar
Description

Removes a Schedule from a Calendar.

Parametersosid.id.IdscheduleIdthe Id of the Schedule
osid.id.IdcalendarIdthe Id of the Calendar
ErrorsNOT_FOUND scheduleId or calendarId not found or scheduleId not assigned to calendarId
NULL_ARGUMENT scheduleId or calendarId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignScheduleToCalendar
Description

Moves a Schedule from one Calendar to another. Mappings to other Calendars are unaffected.

Parametersosid.id.IdscheduleIdthe Id of the Schedule
osid.id.IdfromBillingIdthe Id of the current Calendar
osid.id.IdtoBiillingIdthe Id of the destination Calendar
ErrorsNOT_FOUND scheduleId, fromCalendarId, or toCalendarId not found or scheduleId not mapped to fromCalendarId
NULL_ARGUMENT scheduleId, fromCalendarId, or toCalendarId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.