public interface SceneBatchAdminSession extends SceneAdminSession
This session creates, updates, and deletes Scenes
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
Scene,
a SceneForm
is requested using
getSceneFormsForCreate()
specifying the desired record
Types
or none if no record Types
are needed. Each
of the returned SceneForms
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 SceneForm
is
submiited to a create operation, it cannot be reused with another create
operation unless the first operation was unsuccessful. Each
SceneForm
corresponds to an attempted transaction.
The SceneForms
returned from
getSceneFormsForCreate()
may be linked to the originating request
through the peer Ids
of the SceneForm.
In
the case where there may be duplicates, any SceneForm
of
the same peer Ids
may be used for a create operation.
Once a batch of SceneForm
are submitted for create, a
CreateScene
is returned for each SceneForm,
although the ordering is not defined. Only errors that pertain to the
entire create operation are returned from createScenes(),
errors specific to an individual SceneForm
are indicated in
the corresponding CreateScene.
CreateScenes
may be linked to the originating SceneForm
through the
SceneForm
Id
.
For updates, SceneForms
are requested to the
Scene
Id
that is to be updated using
getSceneFormsForUpdate()
where the reference Id
in
the SceneForm
may be used to link the request. Similarly,
the SceneForm
has metadata about the data that can be
updated and it can perform validation before submitting the update. The
SceneForm
can only be used once for a successful update and
cannot be reused.
Once a batch of SceneForms
are submitted for update, an
UpdateScene
is returned for each SceneForm,
although the ordering is not defined. Only errors that pertain to the
entire update operation are returned from updateScenes(),
errors specific to an individual SceneForm
are indicated in
the corresponding UpdateScene.
UpdateScenes
may be linked to the originating SceneForm
through the
SceneForm
Id.
The delete operations delete Scenes
in bulk. To unmap a
Scene
from the current System,
the
SceneSystemAssignmentSession
should be used. These delete
operations attempt to remove the Scene
itself thus removing
it from all known System
catalogs. Bulk delete operations
return the results in DeleteScenes.
Modifier and Type | Method and Description |
---|---|
AliasResponseList |
aliasScenes(AliasRequestList aliasRequests)
Adds an
Id to a Scene for the purpose of
creating compatibility. |
CreateResponseList |
createScenes(SceneBatchFormList sceneForms)
Creates a new set of
Scenes. |
DeleteResponseList |
deleteAllScenes()
Deletes all
Scenes in this System. |
DeleteResponseList |
deleteScenes(IdList sceneIds)
Deletes scenes for the given
Ids. |
SceneBatchFormList |
getSceneFormsForCreate(long n,
Type[] sceneRecordTypes)
Gets the scene forms for creating a bunch of new scenes.
|
SceneBatchFormList |
getSceneFormsForUpdate(IdList sceneIds)
Gets the scene forms for updating an existing set of scenes.
|
UpdateResponseList |
updateScenes(SceneBatchFormList sceneForms)
Updates existing scenes.
|
aliasScene, canCreateScenes, canCreateSceneWithRecordTypes, canDeleteScenes, canManageSceneAliases, canUpdateScenes, createScene, deleteScene, getSceneFormForCreate, getSceneFormForUpdate, getSystem, getSystemId, updateScene
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
SceneBatchFormList getSceneFormsForCreate(long n, Type[] sceneRecordTypes) throws OperationFailedException, PermissionDeniedException
n
- the number of forms to retrievesceneRecordTypes
- array of scene record types to be included in
each create operation or an empty list if noneNullArgumentException
- peers
or
sceneRecordTypes
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failureUnsupportedException
- unable to request forms with
given record typesmandatory
- This method must be implemented. CreateResponseList createScenes(SceneBatchFormList sceneForms) throws OperationFailedException, PermissionDeniedException
Scenes.
This method returns an
error if the entire operation fails. Otherwise, the status of an
individual create operation is indicated in the
BatchCreateScene
.sceneForms
- the scene formsNullArgumentException
- sceneForms
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. SceneBatchFormList getSceneFormsForUpdate(IdList sceneIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
sceneIds
- the Ids
of the Scene
NotFoundException
- a sceneId
is not
foundNullArgumentException
- sceneIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. UpdateResponseList updateScenes(SceneBatchFormList sceneForms) throws OperationFailedException, PermissionDeniedException
BatchCreateScene
.sceneForms
- the form containing the elements to be updatedNullArgumentException
- sceneForms
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteAllScenes() throws OperationFailedException, PermissionDeniedException
Scenes
in this System.
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. DeleteResponseList deleteScenes(IdList sceneIds) throws OperationFailedException, PermissionDeniedException
Ids.
sceneIds
- the Ids
of the scenes to deleteNullArgumentException
- sceneIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. AliasResponseList aliasScenes(AliasRequestList aliasRequests) throws OperationFailedException, PermissionDeniedException
Id
to a Scene
for the purpose of
creating compatibility. The primary Id
of the
Scene
is determined by the provider. The new Id
is an alias to the primary Id.
If the alias is a
pointer to another scene, it is reassigned to the given scene
Id.
aliasRequests
- the alias requestsNullArgumentException
- aliasRequests
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.