public interface RecurringEventBatchAdminSession extends RecurringEventAdminSession
This session creates, updates, and deletes RecurringEvents
in bulk. 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 getRecurringEventFormsForCreate()
specifying the
desired record Types
or none if no record Types
are needed. Each of the returned RecurringEventForms
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 a
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.
The RecurringEventForms
returned from
getRecurringEventFormsForCreate()
may be linked to the originating
request through the peer Ids
of the
RecurringEventForm.
In the case where there may be duplicates, any
RecurringEventForm
of the same peer Ids
may
be used for a create operation.
Once a batch of RecurringEventForms
are submitted for
create, a CreateResponse
is returned for each
RecurringEventForm,
although the ordering is not defined. Only
errors that pertain to the entire create operation are returned from
createRecurringEvents(),
errors specific to an individual
RecurringEventForm
are indicated in the corresponding
CreateResponse.
CreateResponses
may be
linked to the originating RecurringEventForm
through the
RecurringEventForm
Id
.
For updates, RecurringEventForms
are requested to the
RecurringEvent
Id
that is to be updated
using getRecurringEventFormsForUpdate()
where the reference
Id
in the RecurringEventForm
may be used to
link the request. 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.
Once a batch of RecurringEventForms
are submitted for
update, an UpdateResponse
is returned for each
RecurringEventForm,
although the ordering is not defined. Only
errors that pertain to the entire update operation are returned from
updateRecurringEvents(),
errors specific to an individual
RecurringEventForm
are indicated in the corresponding
UpdateResponse.
UpdateResponses
may be
linked to the originating RecurringEventForm
through the
RecurringEventForm
Id.
The delete operations delete RecurringEvents
in bulk.
To unmap a RecurringEvent
from the current Calendar,
the RecurringEventCalendarAssignmentSession
should
be used. These delete operations attempt to remove the
RecurringEvent
itself thus removing it from all known
Calendar
catalogs. Bulk delete operations return the results in
DeleteResponses.
Modifier and Type | Method and Description |
---|---|
AliasResponseList |
aliasRecurringEvents(AliasRequestList aliasRequests)
Adds an
Id to a RecurringEvent for the
purpose of creating compatibility. |
CreateResponseList |
createRecurringEvents(RecurringEventBatchFormList recurringEventForms)
Creates a new set of
RecurringEvents. |
DeleteResponseList |
deleteAllRecurringEvents()
Deletes all
RecurringEvents in this Calendar
. |
DeleteResponseList |
deleteRecurringEvents(IdList recurringEventIds)
Deletes recurring events for the given
Ids. |
RecurringEventBatchFormList |
getRecurringEventFormsForCreate(long number,
Type[] recurringEventRecordTypes)
Gets the recurring eventforms for creating a bunch of new recurring
events.
|
RecurringEventBatchFormList |
getRecurringEventFormsForUpdate(IdList recurringEventIds)
Gets the recurring event forms for updating an existing set of
recurring events.
|
UpdateResponseList |
updateRecurringEvents(RecurringEventBatchFormList recurringEventForms)
Updates existing recurring events.
|
addBlackout, addEvent, addSchedule, addSpecificDate, addSpecificDateWithLocation, aliasRecurringEvent, canCreateRecurringEvents, canCreateRecurringEventWithRecordTypes, canDeleteRecurringEvents, canManageRecurringEventAliases, canScheduleRecurringEvents, canUpdateRecurringEvents, clearBlackout, clearSpecificDates, createRecurringEvent, deleteRecurringEvent, getCalendar, getCalendarId, getRecurringEventFormForCreate, getRecurringEventFormForUpdate, removeEvent, removeSchedule, updateRecurringEvent
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
RecurringEventBatchFormList getRecurringEventFormsForCreate(long number, Type[] recurringEventRecordTypes) throws OperationFailedException, PermissionDeniedException
number
- the number of forms to retrieverecurringEventRecordTypes
- array of recurring event record
types to be included in each create operation or an empty list
if noneNullArgumentException
-
recurringEventRecordTypes
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failureUnsupportedException
- unable to request forms with
given record typesmandatory
- This method must be implemented. CreateResponseList createRecurringEvents(RecurringEventBatchFormList recurringEventForms) throws OperationFailedException, PermissionDeniedException
RecurringEvents.
This method
returns an error if the entire operation fails. Otherwise, the status
of an individual create operation is indicated in the
BatchCreateResponse
.recurringEventForms
- the recurring event formsNullArgumentException
- recurringEventForms
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. RecurringEventBatchFormList getRecurringEventFormsForUpdate(IdList recurringEventIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
recurringEventIds
- the Ids
of the
RecurringEvent
NotFoundException
- a recurringEventId
is not foundNullArgumentException
- recurringEventIds
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. UpdateResponseList updateRecurringEvents(RecurringEventBatchFormList recurringEventForms) throws OperationFailedException, PermissionDeniedException
BatchCreateResponse
.recurringEventForms
- the form containing the elements to be
updatedNullArgumentException
- recurringEventForms
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteAllRecurringEvents() throws OperationFailedException, PermissionDeniedException
RecurringEvents
in this Calendar
.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteRecurringEvents(IdList recurringEventIds) throws OperationFailedException, PermissionDeniedException
Ids.
recurringEventIds
- the Ids
of the recurring
events to deleteNullArgumentException
- recurringEventIds
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. AliasResponseList aliasRecurringEvents(AliasRequestList aliasRequests) throws OperationFailedException, PermissionDeniedException
Id
to a RecurringEvent
for the
purpose of creating compatibility. The primary Id
of
the RecurringEvent
is determined by the provider. The
new Id
is 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.
aliasRequests
- the alias requestsNullArgumentException
- aliasRequests
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.