OSID Logo
OSID Specifications
provisioning package
Version 3.1.0
Interfaceosid.provisioning.ExchangeSession
Implementsosid.OsidSession
Used Byosid.provisioning.ProvisioningManager
osid.provisioning.ProvisioningProxyManager
Description

This session exchanges an existing provision for a request for another provision via the queue. The data for create and update is provided via the RequestForm.

MethodgetQueueId
Description

Gets the Queue Id associated with this session.

Returnosid.id.Id the Queue Id associated with this session
Compliancemandatory This method must be implemented.
MethodgetQueue
Description

Gets the Queue associated with this session.

Returnosid.provisioning.Queue the queue
ErrorsOPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodcanCreateRequestsInExchange
Description

Tests if this user can create Requests. A return of true does not guarantee successful authorization. A return of false indicates that it is known creating a Request will result in a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer create operations to an unauthorized user.

Parametersosid.id.IdprovisionId the Id of the provision to exchange
Returnboolean false if Request creation is not authorized, true otherwise
ErrorsNULL_ARGUMENT provisionId is null
Compliancemandatory This method must be implemented.
MethodcanCreateRequestWithRecordTypesInExchange
Description

Tests if this user can create a single Request using the desired record types. While ProvisioningManager.getRequestRecordTypes() can be used to examine which records are supported, this method tests which record(s) are required for creating a specific Request. Providing an empty array tests if a Request can be created with no records.

Parametersosid.id.IdprovisionId the Id of the provision to exchange
osid.type.Type[]requestRecordTypes array of request record types
Returnboolean true if Request creation using the specified record Types is supported, false otherwise
ErrorsNULL_ARGUMENT provisionId or requestRecordTypes is null
Compliancemandatory This method must be implemented.
MethodgetRequestFormForCreate
Description

Gets the request form for creating new requests for the exchange. A new form should be requested for each create transaction.

Parametersosid.id.IdprovisionId the Id of the provision to exchange
osid.type.Type[]requestRecordTypes array of request record types
Returnosid.provisioning.RequestForm the request form
ErrorsNOT_FOUND provisionId is not found
NULL_ARGUMENT provisionId or requestRecordTypes is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
UNSUPPORTED unable to get form for requested record types
Compliancemandatory This method must be implemented.
MethodcreateRequestInExchange
Description

Creates a new Request.

Parametersosid.provisioning.RequestFormrequestForm the form for this Request
Returnosid.provisioning.Request the new Request
ErrorsILLEGAL_STATE requestForm already used in a create transaction
INVALID_ARGUMENT one or more of the form elements is invalid
NULL_ARGUMENT requestForm is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
UNSUPPORTED requestForm did not originate from getRequestFormForCreate()
Compliancemandatory This method must be implemented.