OSID Logo
OSID Specifications
tracking batch package
Version 3.1.0
Interfaceosid.tracking.batch.FrontOfficeBatchAdminSession
Implementsosid.tracking.FrontOfficeAdminSession
Used Byosid.tracking.batch.TrackingBatchManager
osid.tracking.batch.TrackingBatchProxyManager
Description

This session creates, updates, and deletes FrontOffices 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 FrontOffice, a FrontOfficeForm is requested using getFrontOfficeFormsForCreate() specifying the desired record Types or none if no record Types are needed. Each of the returned FrontOfficeForms 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 FrontOfficeForm is submiited to a create operation, it cannot be reused with another create operation unless the first operation was unsuccessful. Each FrontOfficeForm corresponds to an attempted transaction.

The FrontOfficeForms returned from getFrontOfficeFormsForCreate() may be linked to the originating request through the peer Ids of the FrontOfficeForm. In the case where there may be duplicates, any FrontOfficeForm of the same peer Ids may be used for a create operation.

Once a batch of FrontOfficeForms are submitted for create, a CreateResponse is returned for each FrontOfficeForm, although the ordering is not defined. Only errors that pertain to the entire create operation are returned from createFrontOffice(), errors specific to an individual FrontOfficeForm are indicated in the corresponding CreateResponse. CreateResponses may be linked to the originating FrontOfficeForm through the FrontOfficeForm Id.

For updates, FrontOfficeForms are requested to the FrontOffice Id that is to be updated using getFrontOfficeFormsForUpdate() where the reference Id in the FrontOfficeForm may be used to link the request. Similarly, the FrontOfficeForm has metadata about the data that can be updated and it can perform validation before submitting the update. The FrontOfficeForm can only be used once for a successful update and cannot be reused.

Once a batch of FrontOfficeForms are submitted for update, an UpdateResponse is returned for each FrontOfficeForm, although the ordering is not defined. Only errors that pertain to the entire update operation are returned from updateFrontOffice(), errors specific to an individual FrontOfficeForm are indicated in the corresponding UpdateResponse. UpdateResponses may be linked to the originating FrontOfficeForm through the FrontOfficeForm Id.

The delete operations delete FrontOffices in bulk. Bulk delete operations return the results in DeleteResponses.

MethodgetFrontOfficeFormsForCreate
Description

Gets the front office forms for creating a bunch of new front offices.

Parameterscardinalnumber the number of forms to retrieve
osid.type.Type[]frontOfficeRecordTypes array of front office record types to be included in each create operation or an empty list if none
Returnosid.tracking.batch.FrontOfficeBatchFormList the front office forms
ErrorsNULL_ARGUMENT frontOfficeRecordTypes is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
UNSUPPORTED unable to request forms with given record types
Compliancemandatory This method must be implemented.
MethodcreateFrontOffices
Description

Creates a new set of FrontOffices. This method returns an error if the entire operation fails. Otherwise, the status of an individual create operation is indicated in the BatchCreateResponse.

Parametersosid.tracking.batch.FrontOfficeBatchFormListfrontOfficeForms the front office forms
Returnosid.transaction.batch.CreateResponseList the create responses
ErrorsNULL_ARGUMENT frontOfficeForms is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodgetFrontOfficeFormsForUpdate
Description

Gets the front office forms for updating an existing set of front offices. A new front office form should be requested for each update transaction.

Parametersosid.id.IdListfrontOfficeIds the Ids of the FrontOffices
Returnosid.tracking.batch.FrontOfficeBatchFormList the front office forms
ErrorsNOT_FOUND a frontOfficeId is not found
NULL_ARGUMENT frontOfficeIds is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodupdateFrontOffices
Description

Updates existing front offices. This method returns an error if the entire operation fails. Otherwise, the status of an individual update operation is indicated in the BatchCreateResponse.

Parametersosid.tracking.batch.FrontOfficeBatchFormListfrontOfficeForms the form containing the elements to be updated
Returnosid.transaction.batch.UpdateResponseList the update responses
ErrorsNULL_ARGUMENT frontOfficeForms is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethoddeleteAllFrontOffices
Description

Deletes all FrontOffices.

Returnosid.transaction.batch.DeleteResponseList the delete responses
ErrorsOPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethoddeleteFrontOffices
Description

Deletes front offices for the given Ids.

Parametersosid.id.IdListfrontOfficeIds the Ids of the front office to delete
Returnosid.transaction.batch.DeleteResponseList the delete responses
ErrorsNULL_ARGUMENT frontOfficeIds is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodaliasFrontOffices
Description

Adds an Id to a FrontOffice for the purpose of creating compatibility. The primary Id of the FrontOffice is determined by the provider. The new Id is an alias to the primary Id. If the alias is a pointer to another front office, it is reassigned to the given entry Id.

Parametersosid.transaction.batch.AliasRequestListaliasRequests the alias requests
Returnosid.transaction.batch.AliasResponseList the alias responses
ErrorsNULL_ARGUMENT aliasRequests is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.