public interface ActivityBatchAdminSession extends ActivityAdminSession
This session creates, updates, and deletes Activities 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
Activity, an ActivityForm is requested using
getActivityFormsForCreate() specifying the desired
objective and record Types or none if no record
Types are needed. Each of the returned ActivityForms
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
ActivityForm is submiited to a create operation, it cannot
be reused with another create operation unless the first operation was
unsuccessful. Each ActivityForm corresponds to an attempted
transaction.
The ActivityForms returned from
getActivityFormsForCreate() may be linked to the originating
request through the peer Ids of the ActivityForm.
In the case where there may be duplicates, any ActivityForm
of the same peer Ids may be used for a create
operation.
Once a batch of ActivityForms are submitted for create,
a CreateResponse is returned for each ActivityForm,
although the ordering is not defined. Only errors that pertain to
the entire create operation are returned from createActivities(),
errors specific to an individual ActivityForm are
indicated in the corresponding CreateResponse.
CreateResponses may be linked to the originating
ActivityForm through the ActivityForm Id
.
For updates, ActivityForms are requested to the
Activity Id that is to be updated using
getActivityFormsForUpdate() where the reference Id
in the ActivityForm may be used to link the request.
Similarly, the ActivityForm has metadata about the data
that can be updated and it can perform validation before submitting the
update. The ActivityForm can only be used once for a
successful update and cannot be reused.
Once a batch of ActivityForms are submitted for update,
an UpdateResponse is returned for each ActivityForm,
although the ordering is not defined. Only errors that pertain to
the entire update operation are returned from updateActivities(),
errors specific to an individual ActivityForm are
indicated in the corresponding UpdateResponse.
UpdateResponses may be linked to the originating
ActivityForm through the ActivityForm Id.
The delete operations delete Activities in bulk. To
unmap an Activity from the current ObjectiveBank,
the ActivityObjectiveBankAssignmentSession should
be used. These delete operations attempt to remove the Activity
itself thus removing it from all known ObjectiveBank
catalogs. Bulk delete operations return the results in
DeleteResponses.
| Modifier and Type | Method and Description |
|---|---|
AliasResponseList |
aliasActivities(AliasRequestList aliasRequests)
Adds an
Id to an Activity for the
purpose of creating compatibility. |
CreateResponseList |
createActivities(ActivityBatchFormList activityForms)
Creates a new set of
Activities. |
DeleteResponseList |
deleteActivities(IdList activityIds)
Deletes activities for the given
Ids. |
DeleteResponseList |
deleteActivitiesForObjective(Id objectiveId)
Deletes activities for the given objective.
|
DeleteResponseList |
deleteAllActivities()
Deletes all
Activities in this ObjectiveBank
. |
ActivityBatchFormList |
getActivityFormsForCreate(IdList objectiveIds,
Type[] activityRecordTypes)
Gets the activity forms for creating a bunch of new activities.
|
ActivityBatchFormList |
getActivityFormsForUpdate(IdList activityIds)
Gets the activity forms for updating an existing set of activities.
|
UpdateResponseList |
updateActivities(ActivityBatchFormList activityForms)
Updates existing activities.
|
aliasActivity, canCreateActivities, canCreateActivityWithRecordTypes, canDeleteActivities, canManageActivityAliases, canUpdateActivities, createActivity, deleteActivity, getActivityFormForCreate, getActivityFormForUpdate, getObjectiveBank, getObjectiveBankId, updateActivitygetAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionscloseActivityBatchFormList getActivityFormsForCreate(IdList objectiveIds, Type[] activityRecordTypes) throws NotFoundException, OperationFailedException, PermissionDeniedException
objectiveIds - a list of objective Ids activityRecordTypes - array of activity record types to be
included in each create operation or an empty list if noneNotFoundException - an objectiveId is
not foundNullArgumentException - objectiveIds or
activityRecordTypes is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failureUnsupportedException - unable to request forms with
given record typesmandatory - This method must be implemented. CreateResponseList createActivities(ActivityBatchFormList activityForms) throws OperationFailedException, PermissionDeniedException
Activities. This method returns an
error if the entire operation fails. Otherwise, the status of an
individual create operation is indicated in the
BatchCreateResponse .activityForms - the activity formsNullArgumentException - activityForms is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. ActivityBatchFormList getActivityFormsForUpdate(IdList activityIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
activityIds - the Ids of the Activity
NotFoundException - an activityId is not
foundNullArgumentException - activityIds is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. UpdateResponseList updateActivities(ActivityBatchFormList activityForms) throws OperationFailedException, PermissionDeniedException
BatchCreateResponse .activityForms - the form containing the elements to be updatedNullArgumentException - activityForms is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. DeleteResponseList deleteAllActivities() throws OperationFailedException, PermissionDeniedException
Activities in this ObjectiveBank
.OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. DeleteResponseList deleteActivities(IdList activityIds) throws OperationFailedException, PermissionDeniedException
Ids. activityIds - the Ids of the activities to deleteNullArgumentException - activityIds is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. DeleteResponseList deleteActivitiesForObjective(Id objectiveId) throws OperationFailedException, PermissionDeniedException
objectiveId - an Id of an objectiveNullArgumentException - objectiveId is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. AliasResponseList aliasActivities(AliasRequestList aliasRequests) throws OperationFailedException, PermissionDeniedException
Id to an Activity for the
purpose of creating compatibility. The primary Id of
the Activity is determined by the provider. The new
Id is an alias to the primary Id. If the
alias is a pointer to another activity, it is reassigned to the given
activity Id. aliasRequests - the alias requestsNullArgumentException - aliasRequests is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented.