OSID Logo
OSID Specifications
installation batch package
Version 3.1.0
Interfaceosid.installation.batch.InstallationPackageBatchAdminSession
Implementsosid.installation.InstallationPackageAdminSession
Used Byosid.installation.batch.InstallationBatchManager
osid.installation.batch.InstallationBatchProxyManager
Description

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

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

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

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

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

The delete operations delete InstallationPackages in bulk. To unmap a InstallationPackage from the current Depot, the InstallationPackageDepotAssignmentSession should be used. These delete operations attempt to remove the InstallationPackage itself thus removing it from all known Depot catalogs. Bulk delete operations return the results in DeleteResponses.

MethodgetInstallationPackageFormsForCreate
Description

Gets the package forms for creating a bunch of new packages.

Parameterscardinalnumber the number of forms to retrieve
osid.type.Type[]installationPackageRecordTypes array of package record types to be included in each create operation or an empty list if none
Returnosid.installation.batch.InstallationPackageBatchFormList the package forms
ErrorsNULL_ARGUMENT packageRecordTypes 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.
MethodcreateInstallationPackages
Description

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

Parametersosid.installation.batch.InstallationPackageBatchFormListinstallationPackageForms the package forms
Returnosid.transaction.batch.CreateResponseList the create responses
ErrorsNULL_ARGUMENT packageForms is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodgetInstallationPackageFormsForUpdate
Description

Gets the package forms for updating an existing set of packages. A new package form should be requested for each update transaction.

Parametersosid.id.IdListinstallationPackageIds the Ids of the InstallationPackage
Returnosid.installation.batch.InstallationPackageBatchFormList the package form
ErrorsNOT_FOUND a packageId is not found
NULL_ARGUMENT packageIds is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodupdateInstallationPackages
Description

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

Parametersosid.installation.batch.InstallationPackageBatchFormListinstallationPackageForms the form containing the elements to be updated
Returnosid.transaction.batch.UpdateResponseList the update responses
ErrorsNULL_ARGUMENT packageForms is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethoddeleteAllInstallationPackages
Description

Deletes all InstallationPackages in this Depot.

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

Deletes packages for the given Ids.

Parametersosid.id.IdListinstallationPackageIds the Ids of the packages to delete
Returnosid.transaction.batch.DeleteResponseList the delete responses
ErrorsNULL_ARGUMENT packageIds is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodaliasInstallationPackages
Description

Adds an Id to a InstallationPackage for the purpose of creating compatibility. The primary Id of the InstallationPackage is determined by the provider. The new Id is an alias to the primary Id. If the alias is a pointer to another package, it is reassigned to the given package 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.