OSID Logo
OSID Specifications
calendaring package
Version 3.1.0
Interfaceosid.calendaring.RecurringEventAdminSession
Implementsosid.OsidSession
Implemented Byosid.calendaring.batch.RecurringEventBatchAdminSession
Used Byosid.calendaring.CalendaringManager
osid.calendaring.CalendaringProxyManager
Description

This session creates, updates, and deletes RecurringEvents. The data for create and update is provided by the consumer via the form object. OsidForms are requested for each create or update and may not be reused.

Create and update operations differ in their usage. To create a RecurringEvent, a RecurringEventForm is requested using getRecurringEventFormForCreate() specifying the desired relationship peers and record Types or none if no record Types are needed. The returned RecurringEventForm will indicate that it is to be used with a create operation and can be used to examine metdata or validate data prior to creation. Once the RecurringEventForm is submiited to a create operation, it cannot be reused with another create operation unless the first operation was unsuccessful. Each RecurringEventForm corresponds to an attempted transaction.

For updates, RecurringEventForms are requested to the RecurringEvent Id that is to be updated using getRecurringEventFormForUpdate(). Similarly, the RecurringEventForm has metadata about the data that can be updated and it can perform validation before submitting the update. The RecurringEventForm can only be used once for a successful update and cannot be reused.

The delete operations delete Recurring Events . To unmap a RecurringEvent from the current Calendar, the RecurringEventCalendarAssignmentSession should be used. These delete operations attempt to remove the Event itself thus removing it from all known Calendar catalogs.

This session includes an Id aliasing mechanism to assign an external Id to an internally assigned Id.

MethodgetCalendarId
Description

Gets the Calendar Id associated with this session.

Returnosid.id.Id the Calendar Id associated with this session
Compliancemandatory This method must be implemented.
MethodgetCalendar
Description

Gets the Calendar associated with this session.

Returnosid.calendaring.Calendar the Calendar associated with this session
ErrorsOPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodcanCreateRecurringEvents
Description

Tests if this user can create RecurringEvents. A return of true does not guarantee successful authorization. A return of false indicates that it is known creating a RecurringEvent will result in a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer create operations to an unauthorized user.

Returnboolean false if RecurringEvent creation is not authorized, true otherwise
Compliancemandatory This method must be implemented.
MethodcanCreateRecurringEventWithRecordTypes
Description

Tests if this user can create a single RecurringEvent using the desired record types. While CalendaringManager.getRecurringEventRecordTypes() can be used to examine which records are supported, this method tests which record(s) are required for creating a specific RecurringEvent. Providing an empty array tests if a RecurringEvent can be created with no records.

Parametersosid.type.Type[]recurringEventRecordTypes array of recurring event types
Returnboolean true if RecurringEvent creation using the specified record Types is supported, false otherwise
ErrorsNULL_ARGUMENT recurringEventRecordTypes is null
Compliancemandatory This method must be implemented.
MethodgetRecurringEventFormForCreate
Description

Gets the recurring event form for creating new recurring events. A new form should be requested for each create transaction.

Parametersosid.type.Type[]recurringEventRecordTypes array of recurring event types
Returnosid.calendaring.RecurringEventForm the recurring event form
ErrorsNULL_ARGUMENT recurringEventRecordTypes is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
UNSUPPORTED unable to get form for requested record types
Compliancemandatory This method must be implemented.
MethodcreateRecurringEvent
Description

Creates a new RecurringEvent.

Parametersosid.calendaring.RecurringEventFormrecurringEventForm the form for this RecurringEvent
Returnosid.calendaring.RecurringEvent the new RecurringEvent
ErrorsILLEGAL_STATE recurringEventForm already used in a create transaction
INVALID_ARGUMENT one or more of the form elements is invalid
NULL_ARGUMENT recurringEventForm is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
UNSUPPORTED recurringEventForm did not originate in a create transaction
Compliancemandatory This method must be implemented.
MethodcanUpdateRecurringEvents
Description

Tests if this user can update RecurringEvents. A return of true does not guarantee successful authorization. A return of false indicates that it is known updating a RecurringEvent will result in a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer update operations to an unauthorized user.

Returnboolean false if recurring event modification is not authorized, true otherwise
Compliancemandatory This method must be implemented.
MethodgetRecurringEventFormForUpdate
Description

Gets the recurring event form for updating an existing recurring event. A new recurring event form should be requested for each update transaction.

Parametersosid.id.IdrecurringEventId the Id of the RecurringEvent
Returnosid.calendaring.RecurringEventForm the recurring event form
ErrorsNOT_FOUND recurringEventId is not found
NULL_ARGUMENT recurringEventId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodupdateRecurringEvent
Description

Updates an existing recurring event.

Parametersosid.calendaring.RecurringEventFormrecurringEventForm the form containing the elements to be updated
ErrorsILLEGAL_STATE recurringEventForm already used in an update transaction
INVALID_ARGUMENT the form contains an invalid value
NULL_ARGUMENT recurringEventForm is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
UNSUPPORTED recurringEventForm did not originate in an update transaction
Compliancemandatory This method must be implemented.
MethodcanDeleteRecurringEvents
Description

Tests if this user can delete RecurringEvents. A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting a RecurringEvent will result in a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer delete operations to an unauthorized user.

Returnboolean false if RecurringEvent deletion is not authorized, true otherwise
Compliancemandatory This method must be implemented.
MethoddeleteRecurringEvent
Description

Deletes the RecurringEvent identified by the given Id.

Parametersosid.id.IdrecurringEventId the Id of the RecurringEvent to delete
ErrorsNOT_FOUND a RecurringEvent was not found identified by the given Id
NULL_ARGUMENT recurringEventId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodcanManageRecurringEventAliases
Description

Tests if this user can manage Id aliases for RecurringEvents. A return of true does not guarantee successful authorization. A return of false indicates that it is known changing an alias will result in a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer alias operations to an unauthorized user.

Returnboolean false if RecurringEvent aliasing is not authorized, true otherwise
Compliancemandatory This method must be implemented.
MethodaliasRecurringEvent
Description

Adds an Id to a RecurringEvent for the purpose of creating compatibility. The primary Id of the RecurringEvent is determined by the provider. The new Id performs as an alias to the primary Id. If the alias is a pointer to another recurring event, it is reassigned to the given recurring event Id.

Parametersosid.id.IdrecurringEventId the Id of a RecurringEvent
osid.id.IdaliasId the alias Id
ErrorsALREADY_EXISTS aliasId is already assigned
NOT_FOUND recurringEventId not found
NULL_ARGUMENT recurringEventId or aliasId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodcanScheduleRecurringEvents
Description

Tests if this user can schedule recurring events. A return of true does not guarantee successful authorization. A return of false indicates that it is known recurring event 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 create operations to an unauthorized user.

Returnboolean false if recurring event scheduling is not authorized, true otherwise
Compliancemandatory This method must be implemented.
MethodaddSchedule
Description

Adds a schedule to the given recurring event.

Parametersosid.id.IdrecurringEventId a recurring event Id
osid.id.IdscheduleId a schedule Id
Returnosid.id.Id the Id of the schedule
ErrorsALREADY_EXISTS schedule is already part of recurring event
NOT_FOUND recurringEventId or scheduleId is not found
NULL_ARGUMENT recurringEventId or scheduleId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodremoveSchedule
Description

Removes a schedule from a given recurring event.

Parametersosid.id.IdrecurringEventId a recurring event Id
osid.id.IdscheduleId the schedule Id
ErrorsNOT_FOUND schedule not part of recurring event
NULL_ARGUMENT recurringEventId or scheduleId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodaddSpecificDate
Description

Adds a specific date to the given recurring event.

Parametersosid.id.IdrecurringEventId a recurring event Id
osid.calendaring.DateTimedate a date
osid.locale.DisplayTextlocationDescription location description
ErrorsNOT_FOUND recurringEventId is not found
NULL_ARGUMENT recurringEventId, date, or locationDescription is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodaddSpecificDateWithLocation
Description

Adds a specific date to the given recurring event.

Parametersosid.id.IdrecurringEventId a recurring event Id
osid.calendaring.DateTimedate a date
osid.id.IdlocationId a location
ErrorsNOT_FOUND recurringEventId or locationId is not found
NULL_ARGUMENT recurringEventId, date, or locationId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodclearSpecificDates
Description

Clears any specific dates between the given dates inclusive.

Parametersosid.id.IdrecurringEventId a recurring event Id
osid.calendaring.DateTimefrom start date inclusive
osid.calendaring.DateTimeto end date inclusive
ErrorsINVALID_ARGUMENT from is greater than to
NOT_FOUND recurringEventId is not found
NULL_ARGUMENT recurringEventId, from or to is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodaddEvent
Description

Adds another event as part of this recurring event.

Parametersosid.id.IdrecurringEventId a recurring event Id
osid.id.IdeventId an event Id
ErrorsNOT_FOUND recurringEventId or eventId is not found
NULL_ARGUMENT recurringEventId or eventId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodremoveEvent
Description

Removes an event as part of this recurring event.

Parametersosid.id.IdrecurringEventId a recurring event Id
osid.id.IdeventId an event Id
ErrorsNOT_FOUND recurringEventId or eventId is not found or eventId not part of recurringEventId
NULL_ARGUMENT recurringEventId or eventId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodaddBlackout
Description

Adds a blackout to the given recurring event that blocks events in the series.

Parametersosid.id.IdrecurringEventId a recurring event Id
osid.calendaring.DateTimefrom start date inclusive
osid.calendaring.DateTimeto end date inclusive
ErrorsINVALID_ARGUMENT from is greater than to
NOT_FOUND recurringEventId is not found
NULL_ARGUMENT recurringEventId, from or to is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodclearBlackout
Description

Clears any blackouts between the given dates inclusive.

Parametersosid.id.IdrecurringEventId a recurring event Id
osid.calendaring.DateTimefrom start date inclusive
osid.calendaring.DateTimeto end date inclusive
ErrorsINVALID_ARGUMENT from is greater than to
NOT_FOUND recurringEventId is not found
NULL_ARGUMENT recurringEventId, from or to is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.