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

This session defines methods for managing a hierarchy of Mailbox objects. Each node in the hierarchy is a unique Mailbox.

MethodgetMailboxHierarchyId
Description

Gets the hierarchy Id associated with this session.

Returnosid.id.Idthe hierarchy Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetMailboxHierarchy
Description

Gets the hierarchy associated with this session.

Returnosid.hierarchy.Hierarchythe hierarchy associated with this session
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanModifyMailboxHierarchy
Description

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

Returnboolean false if changing this hierarchy is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodaddRootMailbox
Description

Adds a root mailbox.

Parametersosid.id.IdmailboxIdthe Id of a mailbox
ErrorsALREADY_EXISTS mailboxId is already in hierarchy
NOT_FOUND mailboxId not found
NULL_ARGUMENT mailboxId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveRootMailbox
Description

Remove a root mailbox.

Parametersosid.id.IdmailboxIdthe Id of a mailbox
ErrorsNOT_FOUND mailboxId is not a root
NULL_ARGUMENT mailboxId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodaddChildMailbox
Description

Adds a child to a mailbox.

Parametersosid.id.IdmailboxIdthe Id of a mailbox
osid.id.IdchildIdthe Id of the new child
ErrorsALREADY_EXISTS mailboxId is already a parent of childId
NOT_FOUND mailboxId or childId not found
NULL_ARGUMENT mailboxId or childId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveChildMailbox
Description

Removes a child from a mailbox.

Parametersosid.id.IdmailboxIdthe Id of a mailbox
osid.id.IdchildIdthe Id of the new child
ErrorsNOT_FOUND mailboxId not a parent of childId
NULL_ARGUMENT mailboxId or childId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveChildMailboxes
Description

Removes all children from a mailbox.

Parametersosid.id.IdmailboxIdthe Id of a mailbox
ErrorsNOT_FOUND mailboxId not found
NULL_ARGUMENT mailboxId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.