public interface CommissionBatchAdminSession extends CommissionAdminSession
This session creates, updates, and deletes Commissions
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
Commission, a CommissionForm is requested using
getCommissionFormsForCreate() specifying the desired work,
resource, and record Types or none if no record
Types are needed. Each of the returned CommissionForms
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
CommissionForm is submiited to a create operation, it
cannot be reused with another create operation unless the first operation
was unsuccessful. Each CommissionForm corresponds to an
attempted transaction.
The CommissionForms returned from
getCommissionFormsForCreate() may be linked to the originating
request through the peer Ids of the CommissionForm.
In the case where there may be duplicates, any
CommissionForm of the same peer Ids may be used for
a create operation.
Once a batch of CommissionForms are submitted for
create, a CreateResponse is returned for each
CommissionForm, although the ordering is not defined. Only errors
that pertain to the entire create operation are returned from
createCommissions(), errors specific to an individual
CommissionForm are indicated in the corresponding
CreateResponse. CreateResponses may be linked to
the originating CommissionForm through the
CommissionForm Id .
For updates, CommissionForms are requested to the
Commission Id that is to be updated using
getCommissionFormsForUpdate() where the reference Id
in the CommissionForm may be used to link the
request. Similarly, the CommissionForm has metadata about
the data that can be updated and it can perform validation before
submitting the update. The CommissionForm can only be used
once for a successful update and cannot be reused.
Once a batch of CommissionForms are submitted for
update, an UpdateResponse is returned for each
CommissionForm, although the ordering is not defined. Only errors
that pertain to the entire update operation are returned from
updateCommissions(), errors specific to an individual
CommissionForm are indicated in the corresponding
UpdateResponse. UpdateResponses may be linked to
the originating CommissionForm through the
CommissionForm Id.
The delete operations delete Commissions in bulk. To
unmap a Commission from the current Foundry,
the CommissionFoundryAssignmentSession should be used.
These delete operations attempt to remove the Commission
itself thus removing it from all known Foundry catalogs.
Bulk delete operations return the results in DeleteResponses.
| Modifier and Type | Method and Description |
|---|---|
AliasResponseList |
aliasCommissions(AliasRequestList aliasRequests)
Adds an
Id to a Commission for the
purpose of creating compatibility. |
CreateResponseList |
createCommissions(CommissionBatchFormList commissionForms)
Creates a new set of
Commissions. |
DeleteResponseList |
deleteAllCommissions()
Deletes all
Commissions in this Foundry
. |
DeleteResponseList |
deleteCommissions(IdList commissionIds)
Deletes commissions for the given
Ids. |
DeleteResponseList |
deleteCommissionsForResource(Id resourceId)
Deletes commissions for the given resource.
|
DeleteResponseList |
deleteCommissionsForWork(Id workId)
Deletes commissions for the given work.
|
DeleteResponseList |
deleteIneffectiveCommissionsByDate(DateTime date)
Deletes commissions expired before the given date.
|
CommissionBatchFormList |
getCommissionFormsForCreate(CommissionPeerList peers,
Type[] commissionRecordTypes)
Gets the commission forms for creating a bunch of new commissions.
|
CommissionBatchFormList |
getCommissionFormsForUpdate(IdList commissionIds)
Gets the commission forms for updating an existing set of commissions.
|
UpdateResponseList |
updateCommissions(CommissionBatchFormList commissionForms)
Updates existing commissions.
|
aliasCommission, canCreateCommissions, canCreateCommissionWithRecordTypes, canDeleteCommissions, canManageCommissionAliases, canUpdateCommissions, createCommission, deleteCommission, getCommissionFormForCreate, getCommissionFormForUpdate, getFoundry, getFoundryId, updateCommissiongetAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionscloseCommissionBatchFormList getCommissionFormsForCreate(CommissionPeerList peers, Type[] commissionRecordTypes) throws NotFoundException, OperationFailedException, PermissionDeniedException
peers - the relationship peerscommissionRecordTypes - array of commission record types to be
included in each create operation or an empty list if noneNotFoundException - a workId or
resourceId is not foundNullArgumentException - peers or
commissionRecordTypes is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failureUnsupportedException - unable to request forms with
given record typesmandatory - This method must be implemented. CreateResponseList createCommissions(CommissionBatchFormList commissionForms) throws OperationFailedException, PermissionDeniedException
Commissions. This method returns
an error if the entire operation fails. Otherwise, the status of an
individual create operation is indicated in the
BatchCreateResponse .commissionForms - the commission formsNullArgumentException - commissionForms
is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. CommissionBatchFormList getCommissionFormsForUpdate(IdList commissionIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
commissionIds - the Ids of the Commission
NotFoundException - a commissionId is
not foundNullArgumentException - commissionIds is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. UpdateResponseList updateCommissions(CommissionBatchFormList commissionForms) throws OperationFailedException, PermissionDeniedException
BatchCreateResponse .commissionForms - the form containing the elements to be updatedNullArgumentException - commissionForms
is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. DeleteResponseList deleteAllCommissions() throws OperationFailedException, PermissionDeniedException
Commissions in this Foundry
.OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. DeleteResponseList deleteCommissions(IdList commissionIds) throws OperationFailedException, PermissionDeniedException
Ids. commissionIds - the Ids of the commissions to
deleteNullArgumentException - commissionIds is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. DeleteResponseList deleteCommissionsForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException
resourceId - the Id of a resourceNullArgumentException - resourceId is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. DeleteResponseList deleteCommissionsForWork(Id workId) throws OperationFailedException, PermissionDeniedException
workId - the Id of a workNullArgumentException - workId is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. DeleteResponseList deleteIneffectiveCommissionsByDate(DateTime date) throws OperationFailedException, PermissionDeniedException
date - a dateNullArgumentException - date is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. AliasResponseList aliasCommissions(AliasRequestList aliasRequests) throws OperationFailedException, PermissionDeniedException
Id to a Commission for the
purpose of creating compatibility. The primary Id of
the Commission is determined by the provider. The new
Id is an alias to the primary Id. If the
alias is a pointer to another commission, it is reassigned to the
given commission Id. aliasRequests - the alias requestsNullArgumentException - aliasRequests is
null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented.