OSID Logo
OSID Specifications
messaging package
Version 3.0.0
Release Candidate Preview
Interfaceosid.messaging.ReceiptAdminSession
Implementsosid.OsidSession
Description

This session updates Receipts. A receipt exists for all messages where receipts are supported. The data for the update is provided by the consumer via the form object. OsidForms are requested for each update and may not be reused.

ReciptForms are requested to the Receipt Id that is to be updated using getReciptFormForUpdate(). Similarly, the ReceiptForm has metadata about the data that can be updated and it can perform validation before submitting the update. The RecieptForm can only be used once for a successful update and cannot be reused.

This session includes an Id aliasing mechanism to assign an external Id to an internally assigned Id.

MethodgetMailboxId
Description

Gets the Mailbox Id associated with this session.

Returnosid.id.Idthe Mailbox Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetMailbox
Description

Gets the Mailbox associated with this session.

Returnosid.messaging.Mailboxthe Mailbox associated with this session
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanUpdateReceipts
Description

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

Returnboolean false if Receipt modification is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodgetReceiptFormForUpdate
Description

Gets the receipt form for updating an existing receipt. A new receipt form should be requested for each update transaction.

Parametersosid.id.IdreceiptIdthe Id of the Message
Returnosid.messaging.ReceiptFormthe receipt form
ErrorsNOT_FOUND receiptId is not found
NULL_ARGUMENT receiptId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodupdateReceipt
Description

Updates an existing receipt.

Parametersosid.messaging.ReceiptFormreceiptFormthe form containing the elements to be updated
ErrorsILLEGAL_STATE receiptForm already used in an update transaction
INVALID_ARGUMENTthe form contains an invalid value
NULL_ARGUMENT receiptForm is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
UNSUPPORTED receiptForm did not originate from getReceiptFormForUpdate()
CompliancemandatoryThis method must be implemented.