public interface FunctionBatchAdminSession extends FunctionAdminSession
This session creates, updates, and deletes Functions 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
Function, a FunctionForm is requested using
getFunctionFormsForCreate() specifying the desired record
Types or none if no record Types are needed. Each
of the returned FunctionForms 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 FunctionForm is
submiited to a create operation, it cannot be reused with another create
operation unless the first operation was unsuccessful. Each
FunctionForm corresponds to an attempted transaction.
The FunctionForms returned from
getFunctionFormsForCreate() may be linked to the originating
request through the peer Ids of the FunctionForm.
In the case where there may be duplicates, any FunctionForm
of the same peer Ids may be used for a create
operation.
Once a batch of FunctionForms are submitted for create,
a CreateResponse is returned for each FunctionForm,
although the ordering is not defined. Only errors that pertain to
the entire create operation are returned from createFunctions(),
errors specific to an individual FunctionForm are
indicated in the corresponding CreateResponse.
CreateResponses may be linked to the originating
FunctionForm through the FunctionForm Id
.
For updates, FunctionForms are requested to the
Function Id that is to be updated using
getFunctionFormsForUpdate() where the reference Id
in the FunctionForm may be used to link the request.
Similarly, the FunctionForm has metadata about the data
that can be updated and it can perform validation before submitting the
update. The FunctionForm can only be used once for a
successful update and cannot be reused.
Once a batch of FunctionForms are submitted for update,
an UpdateResponse is returned for each FunctionForm,
although the ordering is not defined. Only errors that pertain to
the entire update operation are returned from updateFunctions(),
errors specific to an individual FunctionForm are
indicated in the corresponding UpdateResponse.
UpdateResponses may be linked to the originating
FunctionForm through the FunctionForm Id.
The delete operations delete Functions in bulk. To
unmap a Function from the current Vault, the
FunctionVaultAssignmentSession should be used. These delete
operations attempt to remove the Function itself thus
removing it from all known Vault catalogs. Bulk delete
operations return the results in DeleteResponses.
| Modifier and Type | Method and Description |
|---|---|
AliasResponseList |
aliasFunctions(AliasRequestList aliasRequests)
Adds an
Id to a Function for the purpose
of creating compatibility. |
CreateResponseList |
createFunctions(FunctionBatchFormList functionForms)
Creates a new set of
Functions. |
DeleteResponseList |
deleteAllFunctions()
Deletes all
Functions in this Vault . |
DeleteResponseList |
deleteFunctions(IdList functionIds)
Deletes functions for the given
Ids. |
FunctionBatchFormList |
getFunctionFormsForCreate(long number,
Type[] functionRecordTypes)
Gets the function forms for creating a bunch of new functions.
|
FunctionBatchFormList |
getFunctionFormsForUpdate(IdList functionIds)
Gets the function forms for updating an existing set of functions.
|
UpdateResponseList |
updateFunctions(FunctionBatchFormList functionForms)
Updates existing functions.
|
aliasFunction, canCreateFunctions, canCreateFunctionWithRecordTypes, canDeleteFunctions, canManageFunctionAliases, canUpdateFunctions, createFunction, deleteFunction, getFunctionFormForCreate, getFunctionFormForUpdate, getVault, getVaultId, updateFunctiongetAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionscloseFunctionBatchFormList getFunctionFormsForCreate(long number, Type[] functionRecordTypes) throws OperationFailedException, PermissionDeniedException
number - the number of forms to retrievefunctionRecordTypes - array of function record types to be
included in each create operation or an empty list if noneNullArgumentException - functionRecordTypes
is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failureUnsupportedException - unable to request forms with
given record typesmandatory - This method must be implemented. CreateResponseList createFunctions(FunctionBatchFormList functionForms) throws OperationFailedException, PermissionDeniedException
Functions. This method returns an
error if the entire operation fails. Otherwise, the status of an
individual create operation is indicated in the
BatchCreateResponse .functionForms - the function formsNullArgumentException - functionForms is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. FunctionBatchFormList getFunctionFormsForUpdate(IdList functionIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
functionIds - the Ids of the Function
NotFoundException - a functionId is not
foundNullArgumentException - functionIds is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. UpdateResponseList updateFunctions(FunctionBatchFormList functionForms) throws OperationFailedException, PermissionDeniedException
BatchCreateResponse .functionForms - the form containing the elements to be updatedNullArgumentException - functionForms is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. DeleteResponseList deleteAllFunctions() throws OperationFailedException, PermissionDeniedException
Functions in this Vault .OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. DeleteResponseList deleteFunctions(IdList functionIds) throws OperationFailedException, PermissionDeniedException
Ids. functionIds - the Ids of the functions to deleteNullArgumentException - functionIds is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. AliasResponseList aliasFunctions(AliasRequestList aliasRequests) throws OperationFailedException, PermissionDeniedException
Id to a Function for the purpose
of creating compatibility. The primary Id of the
Function is determined by the provider. The new Id
is an alias to the primary Id. If the alias is
a pointer to another function, it is reassigned to the given entry
Id. aliasRequests - the alias requestsNullArgumentException - aliasRequests is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented.