public interface ObjectiveBatchAdminSession extends ObjectiveAdminSession
This session creates, updates, and deletes Availabilities
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 an
Objective, an ObjectiveForm is requested
using getObjectiveFormsForCreate() specifying the desired
record Types or none if no record Types are
needed. Each of the returned ObjectiveForms 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 an ObjectiveForm
is submiited to a create operation, it cannot be reused with
another create operation unless the first operation was unsuccessful. Each
ObjectiveForm corresponds to an attempted transaction.
The ObjectiveForms returned from
getObjectiveFormsForCreate() may be linked to the originating
request through the peer Ids of the ObjectiveForm.
In the case where there may be duplicates, any
ObjectiveForm of the same peer Ids may be used for
a create operation.
Once a batch of ObjectiveForms are submitted for
create, a CreateResponse is returned for each
ObjectiveForm, although the ordering is not defined. Only errors
that pertain to the entire create operation are returned from
createAvailabilities(), errors specific to an individual
ObjectiveForm are indicated in the corresponding
CreateResponse. CreateResponses may be linked to
the originating ObjectiveForm through the
ObjectiveForm Id .
For updates, ObjectiveForms are requested to the
Objective Id that is to be updated using
getObjectiveFormsForUpdate() where the reference Id
in the ObjectiveForm may be used to link the request.
Similarly, the ObjectiveForm has metadata about the data
that can be updated and it can perform validation before submitting the
update. The ObjectiveForm can only be used once for a
successful update and cannot be reused.
Once a batch of ObjectiveForms are submitted for
update, an UpdateResponse is returned for each
ObjectiveForm, although the ordering is not defined. Only errors
that pertain to the entire update operation are returned from
updateAvailabilities(), errors specific to an individual
ObjectiveForm are indicated in the corresponding
UpdateResponse. UpdateResponses may be linked to
the originating ObjectiveForm through the
ObjectiveForm Id.
The delete operations delete Availabilities in bulk. To
unmap an Objective from the current ObjectiveBank,
the ObjectiveObjectiveBankAssignmentSession should
be used. These delete operations attempt to remove the Objective
itself thus removing it from all known ObjectiveBank
catalogs. Bulk delete operations return the results in
DeleteResponses.
| Modifier and Type | Method and Description |
|---|---|
AliasResponseList |
aliasAvailabilities(AliasRequestList aliasRequests)
Adds an
Id to an Objective for the
purpose of creating compatibility. |
CreateResponseList |
createAvailabilities(ObjectiveBatchFormList objectiveForms)
Creates a new set of
Availabilities. |
DeleteResponseList |
deleteAllAvailabilities()
Deletes all
Availabilities in this ObjectiveBank
. |
DeleteResponseList |
deleteAvailabilities(IdList objectiveIds)
Deletes availabilities for the given
Ids. |
ObjectiveBatchFormList |
getObjectiveFormsForCreate(long number,
Type[] objectiveRecordTypes)
Gets the objective forms for creating a bunch of new objectives.
|
ObjectiveBatchFormList |
getObjectiveFormsForUpdate(IdList objectiveIds)
Gets the objective forms for updating an existing set of
availabilities.
|
UpdateResponseList |
updateAvailabilities(ObjectiveBatchFormList objectiveForms)
Updates existing availabilities.
|
aliasObjective, canCreateObjectives, canCreateObjectiveWithRecordTypes, canDeleteObjectives, canManageObjectiveAliases, canUpdateObjectives, createObjective, deleteObjective, getObjectiveBank, getObjectiveBankId, getObjectiveFormForCreate, getObjectiveFormForUpdate, updateObjectivegetAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionscloseObjectiveBatchFormList getObjectiveFormsForCreate(long number, Type[] objectiveRecordTypes) throws OperationFailedException, PermissionDeniedException
number - the number of forms to retrieveobjectiveRecordTypes - array of objective record types to be
included in each create operation or an empty list if noneNullArgumentException - objectiveRecordTypes
is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failureUnsupportedException - unable to request forms with
given record typesmandatory - This method must be implemented. CreateResponseList createAvailabilities(ObjectiveBatchFormList objectiveForms) throws OperationFailedException, PermissionDeniedException
Availabilities. This method
returns an error if the entire operation fails. Otherwise, the status
of an individual create operation is indicated in the
BatchCreateResponse .objectiveForms - the objective formsNullArgumentException - objectiveForms
is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. ObjectiveBatchFormList getObjectiveFormsForUpdate(IdList objectiveIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
objectiveIds - the Ids of the Objective
NotFoundException - an objectiveId is
not foundNullArgumentException - objectiveIds is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. UpdateResponseList updateAvailabilities(ObjectiveBatchFormList objectiveForms) throws OperationFailedException, PermissionDeniedException
BatchCreateResponse .objectiveForms - the form containing the elements to be updatedNullArgumentException - objectiveForms
is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. DeleteResponseList deleteAllAvailabilities() throws OperationFailedException, PermissionDeniedException
Availabilities in this ObjectiveBank
.OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. DeleteResponseList deleteAvailabilities(IdList objectiveIds) throws OperationFailedException, PermissionDeniedException
Ids. objectiveIds - the Ids of the availabilities to
deleteNullArgumentException - objectiveIds is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. AliasResponseList aliasAvailabilities(AliasRequestList aliasRequests) throws OperationFailedException, PermissionDeniedException
Id to an Objective for the
purpose of creating compatibility. The primary Id of
the Objective is determined by the provider. The new
Id is an alias to the primary Id. If the
alias is a pointer to another objective, it is reassigned to the given
objective Id. aliasRequests - the alias requestsNullArgumentException - aliasRequests is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented.