Interface CyclicTimePeriodBatchAdminSession
- All Superinterfaces:
AutoCloseable, Closeable, CyclicTimePeriodAdminSession, OsidSession, OsidSession
This session creates, updates, and deletes CyclicTimePeriods 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
CyclicTimePeriod , a CyclicTimePeriodForm is requested using
getCyclicTimePeriodFormsForCreate() specifying the desired record
Types or none if no record Types are needed. Each of the
returned CyclicTimePeriodForms 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 CyclicTimePeriodForm is submiited
to a create operation, it cannot be reused with another create operation
unless the first operation was unsuccessful. Each
CyclicTimePeriodForm corresponds to an attempted transaction.
The CyclicTimePeriodForms returned from
getCyclicTimePeriodFormsForCreate() may be linked to the originating
request through the peer Ids of the CyclicTimePeriodForm .
In the case where there may be duplicates, any
CyclicTimePeriodForm of the same peer Ids may be used for a
create operation.
Once a batch of CyclicTimePeriodForms are submitted for
create, a CreateResponse is returned for each
CyclicTimePeriodForm , although the ordering is not defined. Only errors
that pertain to the entire create operation are returned from
createCyclicTimePeriods() , errors specific to an individual
CyclicTimePeriodForm are indicated in the corresponding
CreateResponse . CreateResponses may be linked to the originating
CyclicTimePeriodForm through the CyclicTimePeriodForm
Id .
For updates, CyclicTimePeriodForms are requested to the
CyclicTimePeriod Id that is to be updated using
getCyclicTimePeriodFormsForUpdate() where the reference Id in the
CyclicTimePeriodForm may be used to link the request. Similarly,
the CyclicTimePeriodForm has metadata about the data that can be
updated and it can perform validation before submitting the update. The
CyclicTimePeriodForm can only be used once for a successful update
and cannot be reused.
Once a batch of CyclicTimePeriodForms are submitted for
update, an UpdateResponse is returned for each
CyclicTimePeriodForm , although the ordering is not defined. Only errors
that pertain to the entire update operation are returned from
updateCyclicTimePeriods() , errors specific to an individual
CyclicTimePeriodForm are indicated in the corresponding
UpdateResponse . UpdateResponses may be linked to the originating
CyclicTimePeriodForm through the CyclicTimePeriodForm
Id .
The delete operations delete CyclicTimePeriods in bulk. To
unmap a CyclicTimePeriod from the current Calendar , the
CyclicTimePeriodCalendarAssignmentSession should be used. These
delete operations attempt to remove the CyclicTimePeriod itself
thus removing it from all known Calendar catalogs. Bulk delete
operations return the results in DeleteResponses .
-
Method Summary
Modifier and TypeMethodDescriptionaliasCyclicTimePeriods(AliasRequestList aliasRequests) Adds anIdto aCyclicTimePeriodfor the purpose of creating compatibility.createCyclicTimePeriods(CyclicTimePeriodBatchFormList cyclicTimePeriodForms) Creates a new set ofCyclicTimePeriods.Deletes allCyclicTimePeriodsin thisCalendar.deleteCyclicTimePeriods(IdList cyclicTimePeriodIds) Deletes cyclic time periods for the givenIds.getCyclicTimePeriodFormsForCreate(long number, Type[] cyclicTimePeriodRecordTypes) Gets the cyclic time period forms for creating a bunch of new cyclic time periods.getCyclicTimePeriodFormsForUpdate(IdList cyclicTimePeriodIds) Gets the cyclic time period forms for updating an existing set of cyclic time periods.updateCyclicTimePeriods(CyclicTimePeriodBatchFormList cyclicTimePeriodForms) Updates existing cyclic time periods.Methods inherited from interface CyclicTimePeriodAdminSession
aliasCyclicTimePeriod, canCreateCyclicTimePeriods, canCreateCyclicTimePeriodWithRecordTypes, canDeleteCyclicTimePeriods, canManageCyclicTimePeriodAliases, canUpdateCyclicTimePeriods, createCyclicTimePeriod, deleteCyclicTimePeriod, getCalendar, getCalendarId, getCyclicTimePeriodFormForCreate, getCyclicTimePeriodFormForUpdate, updateCyclicTimePeriodModifier and TypeMethodDescriptionvoidaliasCyclicTimePeriod(Id cyclicTimePeriodId, Id aliasId) Adds anIdto aCyclicTimePeriodfor the purpose of creating compatibility.booleanTests if this user can createCyclicTimePeriods.booleancanCreateCyclicTimePeriodWithRecordTypes(Type[] cyclicTimePeriodRecordTypes) Tests if this user can create a singleCyclicTimePeriodusing the desired record types.booleanTests if this user can deleteCyclicTimePeriods.booleanTests if this user can manageIdaliases forCyclicTimePeriods.booleanTests if this user can updateCyclicTimePeriods.createCyclicTimePeriod(CyclicTimePeriodForm cyclicTimePeriodForm) Creates a newCyclicTimePeriod.voiddeleteCyclicTimePeriod(Id cyclicTimePeriodId) Deletes theCyclicTimePeriodidentified by the givenId.Gets theCalendarassociated with this session.Gets theCalendarIdassociated with this session.getCyclicTimePeriodFormForCreate(Type[] cyclicTimePeriodRecordTypes) Gets the cyclic time period form for creating new cyclic time periods.getCyclicTimePeriodFormForUpdate(Id cyclicTimePeriodId) Gets the cyclic time period form for updating an existing cyclic time period.voidupdateCyclicTimePeriod(CyclicTimePeriodForm cyclicTimePeriodForm) Updates an existing tiem period.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
-
getCyclicTimePeriodFormsForCreate
CyclicTimePeriodBatchFormList getCyclicTimePeriodFormsForCreate(long number, Type[] cyclicTimePeriodRecordTypes) throws OperationFailedException, PermissionDeniedException Gets the cyclic time period forms for creating a bunch of new cyclic time periods.- Parameters:
number- the number of forms to retrievecyclicTimePeriodRecordTypes- array of cyclic time period record types to be included in each create operation or an empty list if none- Returns:
- the cyclic time period forms
- Throws:
NullArgumentException-cyclicTimePeriodRecordTypesisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failureUnsupportedException- unable to request forms with given record types- Compliance:
mandatory- This method must be implemented.
-
createCyclicTimePeriods
CreateResponseList createCyclicTimePeriods(CyclicTimePeriodBatchFormList cyclicTimePeriodForms) throws OperationFailedException, PermissionDeniedException Creates a new set ofCyclicTimePeriods. This method returns an error if the entire operation fails. Otherwise, the status of an individual create operation is indicated in theBatchCreateResponse.- Parameters:
cyclicTimePeriodForms- the cyclic time period forms- Returns:
- the create responses
- Throws:
NullArgumentException-cyclicTimePeriodFormsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getCyclicTimePeriodFormsForUpdate
CyclicTimePeriodBatchFormList getCyclicTimePeriodFormsForUpdate(IdList cyclicTimePeriodIds) throws NotFoundException, OperationFailedException, PermissionDeniedException Gets the cyclic time period forms for updating an existing set of cyclic time periods. A new cyclic time period form should be requested for each update transaction.- Parameters:
cyclicTimePeriodIds- theIdsof theCyclicTimePeriod- Returns:
- the cyclic time period form
- Throws:
NotFoundException- acyclicTimePeriodIdis not foundNullArgumentException-cyclicTimePeriodIdsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
updateCyclicTimePeriods
UpdateResponseList updateCyclicTimePeriods(CyclicTimePeriodBatchFormList cyclicTimePeriodForms) throws OperationFailedException, PermissionDeniedException Updates existing cyclic time periods. This method returns an error if the entire operation fails. Otherwise, the status of an individual update operation is indicated in theBatchCreateResponse.- Parameters:
cyclicTimePeriodForms- the form containing the elements to be updated- Returns:
- the update responses
- Throws:
NullArgumentException-cyclicTimePeriodFormsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
deleteAllCyclicTimePeriods
DeleteResponseList deleteAllCyclicTimePeriods() throws OperationFailedException, PermissionDeniedExceptionDeletes allCyclicTimePeriodsin thisCalendar.- Returns:
- the delete responses
- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
deleteCyclicTimePeriods
DeleteResponseList deleteCyclicTimePeriods(IdList cyclicTimePeriodIds) throws OperationFailedException, PermissionDeniedException Deletes cyclic time periods for the givenIds.- Parameters:
cyclicTimePeriodIds- theIdsof the cyclic time periods to delete- Returns:
- the delete responses
- Throws:
NullArgumentException-cyclicTimePeriodIdsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
aliasCyclicTimePeriods
AliasResponseList aliasCyclicTimePeriods(AliasRequestList aliasRequests) throws OperationFailedException, PermissionDeniedException Adds anIdto aCyclicTimePeriodfor the purpose of creating compatibility. The primaryIdof theCyclicTimePeriodis determined by the provider. The newIdis an alias to the primaryId. If the alias is a pointer to another cyclic time period, it is reassigned to the given cyclic time periodId.- Parameters:
aliasRequests- the alias requests- Returns:
- the alias responses
- Throws:
NullArgumentException-aliasRequestsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-