public interface AssetBatchAdminSession extends AssetAdminSession
This session creates, updates, and deletes Assets
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
Asset,
an AssetForm
is requested using
getAssetFormsForCreate()
specifying the desired record
Types
or none if no record Types
are needed.
Each of the returned AssetForms
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 AssetForm
is
submiited to a create operation, it cannot be reused with another create
operation unless the first operation was unsuccessful. Each
AssetForm
corresponds to an attempted transaction.
The AssetForms
returned from
getAssetFormsForCreate()
may be linked to the originating request
through the peer Ids
of the AssetForm.
In
the case where there may be duplicates, any AssetForm
of
the same peer Ids
may be used for a create operation.
Once a batch of AssetForms
are submitted for create, a
CreateResponse
is returned for each AssetForm,
although the ordering is not defined. Only errors that pertain to
the entire create operation are returned from createAssets(),
errors specific to an individual AssetForm
are
indicated in the corresponding CreateResponse.
CreateResponses
may be linked to the originating AssetForm
through the AssetForm
Id
.
For updates, AssetForms
are requested to the
Asset
Id
that is to be updated using
getAssetFormsForUpdate()
where the reference Id
in
the AssetForm
may be used to link the request. Similarly,
the AssetForm
has metadata about the data that can be
updated and it can perform validation before submitting the update. The
AssetForm
can only be used once for a successful update and
cannot be reused.
Once a batch of AssetForms
are submitted for update, an
UpdateResponse
is returned for each AssetForm,
although the ordering is not defined. Only errors that pertain to
the entire update operation are returned from updateAssets(),
errors specific to an individual AssetForm
are
indicated in the corresponding UpdateResponse.
UpdateResponses
may be linked to the originating AssetForm
through the AssetForm
Id.
The delete operations delete Assets
in bulk. To unmap
an Asset
from the current Repository,
the
AssetRepositoryAssignmentSession
should be used. These
delete operations attempt to remove the Asset
itself thus
removing it from all known Repository
catalogs. Bulk delete
operations return the results in DeleteResponses.
Modifier and Type | Method and Description |
---|---|
AliasResponseList |
aliasAssets(AliasRequestList aliasRequests)
Adds an
Id to an Asset for the purpose
of creating compatibility. |
CreateResponseList |
createAssets(AssetBatchFormList assetForms)
Creates a new set of
Assets. |
DeleteResponseList |
deleteAllAssetContents()
Deletes all
AssetContents in this Repository
. |
DeleteResponseList |
deleteAllAssets()
Deletes all
Assets in this Repository . |
DeleteResponseList |
deleteAssetContents(IdList assetContentIds)
Deletes asset contents for the given
Ids. |
DeleteResponseList |
deleteAssetContentsForAsset(Id assetId)
Deletes asset contents for the given asset.
|
DeleteResponseList |
deleteAssets(IdList assetIds)
Deletes assets for the given
Ids. |
AssetBatchFormList |
getAssetFormsForCreate(long number,
Type[] assetRecordTypes)
Gets the asset forms for creating a bunch of new assets.
|
AssetBatchFormList |
getAssetFormsForUpdate(IdList assetIds)
Gets the asset forms for updating an existing set of assets.
|
UpdateResponseList |
updateAssets(AssetBatchFormList assetForms)
Updates existing assets.
|
aliasAsset, canCreateAssetContent, canCreateAssetContentWithRecordTypes, canCreateAssets, canCreateAssetWithRecordTypes, canDeleteAssetContents, canDeleteAssets, canManageAssetAliases, canUpdateAssetContents, canUpdateAssets, createAsset, createAssetContent, deleteAsset, deleteAssetContent, getAssetContentFormForCreate, getAssetContentFormForUpdate, getAssetFormForCreate, getAssetFormForUpdate, getRepository, getRepositoryId, updateAsset, updateAssetContent
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
AssetBatchFormList getAssetFormsForCreate(long number, Type[] assetRecordTypes) throws OperationFailedException, PermissionDeniedException
number
- the number of forms to retrieveassetRecordTypes
- array of asset record types to be included in
each create operation or an empty list if noneNullArgumentException
- assetRecordTypes
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failureUnsupportedException
- unable to request forms with
given record typesmandatory
- This method must be implemented. CreateResponseList createAssets(AssetBatchFormList assetForms) throws OperationFailedException, PermissionDeniedException
Assets.
This method returns an
error if the entire operation fails. Otherwise, the status of an
individual create operation is indicated in the
BatchCreateResponse
.assetForms
- the asset formsNullArgumentException
- assetForms
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. AssetBatchFormList getAssetFormsForUpdate(IdList assetIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
assetIds
- the Ids
of the Asset
NotFoundException
- an assetId
is not
foundNullArgumentException
- assetIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. UpdateResponseList updateAssets(AssetBatchFormList assetForms) throws OperationFailedException, PermissionDeniedException
BatchCreateResponse
.assetForms
- the form containing the elements to be updatedNullArgumentException
- assetForms
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteAllAssets() throws OperationFailedException, PermissionDeniedException
Assets
in this Repository
.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteAssets(IdList assetIds) throws OperationFailedException, PermissionDeniedException
Ids.
assetIds
- the Ids
of the assets to deleteNullArgumentException
- assetIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. AliasResponseList aliasAssets(AliasRequestList aliasRequests) throws OperationFailedException, PermissionDeniedException
Id
to an Asset
for the purpose
of creating compatibility. The primary Id
of the
Asset
is determined by the provider. The new Id
is an alias to the primary Id.
If the alias is a
pointer to another asset, it is reassigned to the given asset
Id.
aliasRequests
- the alias requestsNullArgumentException
- aliasRequests
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteAllAssetContents() throws OperationFailedException, PermissionDeniedException
AssetContents
in this Repository
.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteAssetContents(IdList assetContentIds) throws OperationFailedException, PermissionDeniedException
Ids.
assetContentIds
- the Ids
of the asset contents
to deleteNullArgumentException
- assetContentsIds
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteAssetContentsForAsset(Id assetId) throws OperationFailedException, PermissionDeniedException
assetId
- an Id
of the assetNullArgumentException
- assetId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.