public interface EffortBatchAdminSession extends EffortAdminSession
This session creates, updates, and deletes Efforts
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
Effort,
an EffortForm
is requested using
getEffortFormsForCreate()
specifying the desired
commission, resource, record Types
or none if no record
Types
are needed. Each of the returned EffortForms
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
EffortForm
is submiited to a create operation, it cannot be
reused with another create operation unless the first operation was
unsuccessful. Each EffortForm
corresponds to an attempted
transaction.
The EffortForms
returned from
getEffortFormsForCreate()
may be linked to the originating request
through the peer Ids
of the EffortForm.
In
the case where there may be duplicates, any EffortForm
of
the same peer Ids
may be used for a create operation.
Once a batch of EffortForms
are submitted for create, a
CreateResponse
is returned for each EffortForm,
although the ordering is not defined. Only errors that pertain to
the entire create operation are returned from createEfforts(),
errors specific to an individual EffortForm
are
indicated in the corresponding CreateResponse.
CreateResponses
may be linked to the originating EffortForm
through the EffortForm
Id
.
For updates, EffortForms
are requested to the
Effort
Id
that is to be updated using
getEffortFormsForUpdate()
where the reference Id
in
the EffortForm
may be used to link the request. Similarly,
the EffortForm
has metadata about the data that can be
updated and it can perform validation before submitting the update. The
EffortForm
can only be used once for a successful update
and cannot be reused.
Once a batch of EffortForms
are submitted for update,
an UpdateResponse
is returned for each EffortForm,
although the ordering is not defined. Only errors that pertain to
the entire update operation are returned from updateEfforts(),
errors specific to an individual EffortForm
are
indicated in the corresponding UpdateResponse.
UpdateResponses
may be linked to the originating EffortForm
through the EffortForm
Id.
The delete operations delete Efforts
in bulk. To unmap
an Effort
from the current Foundry,
the
EffortFoundryAssignmentSession
should be used. These delete
operations attempt to remove the Effort
itself thus
removing it from all known Foundry
catalogs. Bulk delete
operations return the results in DeleteResponses.
Modifier and Type | Method and Description |
---|---|
AliasResponseList |
aliasEfforts(AliasRequestList aliasRequests)
Adds an
Id to an Effort for the purpose
of creating compatibility. |
CreateResponseList |
createEfforts(EffortBatchFormList effortForms)
Creates a new set of
Efforts. |
DeleteResponseList |
deleteAllEfforts()
Deletes all
Efforts in this Foundry . |
DeleteResponseList |
deleteEfforts(IdList effortIds)
Deletes efforts for the given
Ids. |
DeleteResponseList |
deleteEffortsForCommission(Id commissionId)
Deletes efforts for the given commission.
|
DeleteResponseList |
deleteEffortsForResource(Id resourceId)
Deletes efforts for the given resource.
|
DeleteResponseList |
deleteIneffectiveEffortsByDate(DateTime date)
Deletes efforts expired before the given date.
|
EffortBatchFormList |
getEffortFormsForCreate(EffortPeerList peers,
Type[] effortRecordTypes)
Gets the effort forms for creating a bunch of new efforts.
|
EffortBatchFormList |
getEffortFormsForUpdate(IdList effortIds)
Gets the effort forms for updating an existing set of efforts.
|
UpdateResponseList |
updateEfforts(EffortBatchFormList effortForms)
Updates existing efforts.
|
aliasEffort, canCreateEfforts, canCreateEffortWithRecordTypes, canDeleteEfforts, canManageEffortAliases, canUpdateEfforts, createEffort, deleteEffort, getEffortFormForCreate, getEffortFormForUpdate, getFoundry, getFoundryId, updateEffort
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
EffortBatchFormList getEffortFormsForCreate(EffortPeerList peers, Type[] effortRecordTypes) throws NotFoundException, OperationFailedException, PermissionDeniedException
peers
- the relationship peerseffortRecordTypes
- array of effort record types to be included
in each create operation or an empty list if noneNotFoundException
- a commissionId
or
resourceId
is not foundNullArgumentException
- peers
or
effortRecordTypes
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failureUnsupportedException
- unable to request forms with
given record typesmandatory
- This method must be implemented. CreateResponseList createEfforts(EffortBatchFormList effortForms) throws OperationFailedException, PermissionDeniedException
Efforts.
This method returns an
error if the entire operation fails. Otherwise, the status of an
individual create operation is indicated in the
BatchCreateResponse
.effortForms
- the effort formsNullArgumentException
- effortForms
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EffortBatchFormList getEffortFormsForUpdate(IdList effortIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
effortIds
- the Ids
of the Effort
NotFoundException
- an effortId
is not
foundNullArgumentException
- effortIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. UpdateResponseList updateEfforts(EffortBatchFormList effortForms) throws OperationFailedException, PermissionDeniedException
BatchCreateResponse
.effortForms
- the form containing the elements to be updatedNullArgumentException
- effortForms
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteAllEfforts() throws OperationFailedException, PermissionDeniedException
Efforts
in this Foundry
.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteEfforts(IdList effortIds) throws OperationFailedException, PermissionDeniedException
Ids.
effortIds
- the Ids
of the efforts to deleteNullArgumentException
- effortIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteEffortsForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException
resourceId
- an Id
of a resourceNullArgumentException
- resourceId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteEffortsForCommission(Id commissionId) throws OperationFailedException, PermissionDeniedException
commissionId
- an Id
of a commissionNullArgumentException
- commissionId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteIneffectiveEffortsByDate(DateTime date) throws OperationFailedException, PermissionDeniedException
date
- a dateNullArgumentException
- date
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. AliasResponseList aliasEfforts(AliasRequestList aliasRequests) throws OperationFailedException, PermissionDeniedException
Id
to an Effort
for the purpose
of creating compatibility. The primary Id
of the
Effort
is determined by the provider. The new Id
is an alias to the primary Id.
If the alias is
a pointer to another effort, it is reassigned to the given effort
Id.
aliasRequests
- the alias requestsNullArgumentException
- aliasRequests
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.