Interface PressBatchAdminSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession, PressAdminSession
This session creates, updates, and deletes Presses 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
Press , a PressForm is requested using
getPressFormsForCreate() specifying the desired record Types or
none if no record Types are needed. Each of the returned
PressForms 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 PressForm is submiited to a create operation, it cannot be
reused with another create operation unless the first operation was
unsuccessful. Each PressForm corresponds to an attempted
transaction.
The PressForms returned from getPressFormsForCreate()
may be linked to the originating request through the peer Ids of
the PressForm . In the case where there may be duplicates, any
PressForm of the same peer Ids may be used for a create
operation.
Once a batch of PressForms are submitted for create, a
CreateResponse is returned for each PressForm , although the
ordering is not defined. Only errors that pertain to the entire create
operation are returned from createPresses() , errors specific to
an individual PressForm are indicated in the corresponding
CreateResponse . CreateResponses may be linked to the originating
PressForm through the PressForm Id .
For updates, PressForms are requested to the Press
Id that is to be updated using getPressFormsForUpdate()
where the reference Id in the PressForm may be used to link the
request. Similarly, the PressForm has metadata about the data that can be
updated and it can perform validation before submitting the update. The
PressForm can only be used once for a successful update and cannot
be reused.
Once a batch of PressForms are submitted for update, an
UpdateResponse is returned for each PressForm , although the
ordering is not defined. Only errors that pertain to the entire update
operation are returned from updatePresses() , errors specific to
an individual PressForm are indicated in the corresponding
UpdateResponse . UpdateResponses may be linked to the originating
PressForm through the PressForm Id.
The delete operations delete Presses in bulk. Bulk delete
operations return the results in DeleteResponses .
-
Method Summary
Modifier and TypeMethodDescriptionaliasPresses(AliasRequestList aliasRequests) Adds anIdto aPressfor the purpose of creating compatibility.createPresses(PressBatchFormList pressForms) Creates a new set ofPresses.Deletes allPresses.deletePresses(IdList pressIds) Deletes presses for the givenIds.getPressFormsForCreate(long number, Type[] pressRecordTypes) Gets the press forms for creating a bunch of new presses.getPressFormsForUpdate(IdList pressIds) Gets the press forms for updating an existing set of press.updatePresses(PressBatchFormList pressForms) Updates existing presses.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionsModifier and TypeMethodDescriptionGets the agent authenticated to this session.Gets theIdof the agent authenticated to this session.Gets the rate of the service clock.getDate()Gets the service date which may be the current date or the effective date in which this session exists.Gets the effective agent in use by this session.Gets theIdof the effective agent in use by this session.Gets theDisplayTextformatTypepreference in effect for this session.Gets the locale indicating the localization preferences in effect for this session.booleanTests if an agent is authenticated to this session.Starts a new transaction for this sesson.booleanTests for the availability of transactions.Methods inherited from interface PressAdminSession
aliasPress, canCreatePresses, canCreatePressWithRecordTypes, canDeletePresses, canManagePressAliases, canUpdatePresses, createPress, deletePress, getPressFormForCreate, getPressFormForUpdate, updatePressModifier and TypeMethodDescriptionvoidaliasPress(Id pressId, Id aliasId) Adds anIdto aPressfor the purpose of creating compatibility.booleanTests if this user can createPresses.booleancanCreatePressWithRecordTypes(Type[] pressRecordTypes) Tests if this user can create a singlePressusing the desired record types.booleanTests if this user can deletePresses.booleanTests if this user can manageIdaliases forPresses.booleanTests if this user can updatePresses.createPress(PressForm pressForm) Creates a newPress.voiddeletePress(Id pressId) Deletes aPress.getPressFormForCreate(Type[] pressRecordTypes) Gets the press form for creating new presses.getPressFormForUpdate(Id pressId) Gets the press form for updating an existing press.voidupdatePress(PressForm pressForm) Updates an existing press
-
Method Details
-
getPressFormsForCreate
PressBatchFormList getPressFormsForCreate(long number, Type[] pressRecordTypes) throws OperationFailedException, PermissionDeniedException Gets the press forms for creating a bunch of new presses.- Parameters:
number- the number of forms to retrievepressRecordTypes- array of press record types to be included in each create operation or an empty list if none- Returns:
- the press forms
- Throws:
NullArgumentException-pressRecordTypesisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failureUnsupportedException- unable to request forms with given record types- Compliance:
mandatory- This method must be implemented.
-
createPresses
CreateResponseList createPresses(PressBatchFormList pressForms) throws OperationFailedException, PermissionDeniedException Creates a new set ofPresses. This method returns an error if the entire operation fails. Otherwise, the status of an individual create operation is indicated in theBatchCreateResponse.- Parameters:
pressForms- the press forms- Returns:
- the create responses
- Throws:
NullArgumentException-pressFormsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
getPressFormsForUpdate
PressBatchFormList getPressFormsForUpdate(IdList pressIds) throws NotFoundException, OperationFailedException, PermissionDeniedException Gets the press forms for updating an existing set of press. A new press form should be requested for each update transaction.- Parameters:
pressIds- theIdsof thePresses- Returns:
- the press form
- Throws:
NotFoundException- apressIdis not foundNullArgumentException-pressIdsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
updatePresses
UpdateResponseList updatePresses(PressBatchFormList pressForms) throws OperationFailedException, PermissionDeniedException Updates existing presses. This method returns an error if the entire operation fails. Otherwise, the status of an individual update operation is indicated in theBatchCreateResponse.- Parameters:
pressForms- the form containing the elements to be updated- Returns:
- the update responses
- Throws:
NullArgumentException-pressFormsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
deleteAllPresses
Deletes allPresses.- Returns:
- the delete responses
- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
deletePresses
DeleteResponseList deletePresses(IdList pressIds) throws OperationFailedException, PermissionDeniedException Deletes presses for the givenIds.- Parameters:
pressIds- theIdsof the presses to delete- Returns:
- the delete responses
- Throws:
NullArgumentException-pressIdsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
aliasPresses
AliasResponseList aliasPresses(AliasRequestList aliasRequests) throws OperationFailedException, PermissionDeniedException Adds anIdto aPressfor the purpose of creating compatibility. The primaryIdof thePressis determined by the provider. The newIdis an alias to the primaryId. If the alias is a pointer to another press, it is reassigned to the given pressId.- Parameters:
aliasRequests- the alias requests- Returns:
- the alias responses
- Throws:
NullArgumentException-aliasRequestsisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-