OSID Logo
OSID Specifications
provisioning package
Version 3.0.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.Idthe Queue Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetQueue
Description

Gets the Queue associated with this session.

Returnosid.provisioning.Queuethe queue
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis 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.IdprovisionIdthe Id of the provision to exchange
Returnbooleanfalse if Request creation is not authorized, true otherwise
ErrorsNULL_ARGUMENTprovisionId is null
CompliancemandatoryThis 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.IdprovisionIdthe Id of the provision to exchange
osid.type.Type[]requestRecordTypesarray of request record types
Returnbooleantrue if Request creation using the specified record Types is supported, false otherwise
ErrorsNULL_ARGUMENTprovisionId or requestRecordTypes is null
CompliancemandatoryThis 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.IdprovisionIdthe Id of the provision to exchange
osid.type.Type[]requestRecordTypesarray of request record types
Returnosid.provisioning.RequestFormthe request form
ErrorsNOT_FOUNDprovisionId is not found
NULL_ARGUMENTprovisionId or requestRecordTypes is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
UNSUPPORTEDunable to get form for requested record types
CompliancemandatoryThis method must be implemented.
MethodcreateRequestInExchange
Description

Creates a new Request .

Parametersosid.provisioning.RequestFormrequestFormthe form for this Request
Returnosid.provisioning.Requestthe new Request
ErrorsILLEGAL_STATErequestForm already used in a create transaction
INVALID_ARGUMENTone or more of the form elements is invalid
NULL_ARGUMENTrequestForm is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
UNSUPPORTEDrequestForm did not originate from getRequestFormForCreate()
CompliancemandatoryThis method must be implemented.