Interface HierarchyDesignSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session provides methods to manage a hierarchy. Each node is
expressed as an OSID Id that represents an external object. The
hierarchy only expresses relationships among these Ids. However, changing
the hierarchy may have implications, such as inherited data, in the
associated OSID.
-
Method Summary
Modifier and TypeMethodDescriptionvoidAdds a child to aId.voidAdds a root node.booleanTests if this user can change the hierarchy.Gets the hierarchy associated with this session.Gets the hierarchyIdassociated with this session.voidremoveChild(Id id, Id childId) Removes a child from anId.voidremoveChildren(Id id) Removes all children from anId.voidremoveRoot(Id id) Removes a root node.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionsModifier and TypeMethodDescriptionGets the agent authenticated to this session.Gets theIdof the agent authenticated to this session.Gets the rate of the service clock.getDate()Gets the service date which may be the current date or the effective date in which this session exists.Gets the effective agent in use by this session.Gets theIdof the effective agent in use by this session.Gets theDisplayTextformatTypepreference in effect for this session.Gets the locale indicating the localization preferences in effect for this session.booleanTests if an agent is authenticated to this session.Starts a new transaction for this sesson.booleanTests for the availability of transactions.
-
Method Details
-
getHierarchyId
Id getHierarchyId()Gets the hierarchyIdassociated with this session.- Returns:
- the hierarchy
Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getHierarchy
Gets the hierarchy associated with this session.- Returns:
- the hierarchy associated with this session
- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canModifyHierarchy
boolean canModifyHierarchy()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 aPERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer these operations to an unauthorized user.- Returns:
falseif changing this hierarchy is not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
addRoot
void addRoot(Id id) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Adds a root node.- Parameters:
id- theIdof the node- Throws:
AlreadyExistsException-idis already in hierarchyNotFoundException-idnot foundNullArgumentException-idisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
addChild
void addChild(Id id, Id childId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Adds a child to aId.- Parameters:
id- theIdof the nodechildId- theIdof the new child- Throws:
AlreadyExistsException-childIdis already a child ofidNotFoundException-idorchildIdnot foundNullArgumentException-idorchildIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
removeRoot
void removeRoot(Id id) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes a root node.- Parameters:
id- theIdof the node- Throws:
NotFoundException-idwas not found or not in hierarchyNullArgumentException-idisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
removeChild
void removeChild(Id id, Id childId) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes a child from anId.- Parameters:
id- theIdof the nodechildId- theIdof the child to remove- Throws:
NotFoundException-idorchildIdwas not found orchildIdis not a child ofidNullArgumentException-idorchildIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
removeChildren
void removeChildren(Id id) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes all children from anId.- Parameters:
id- theIdof the node- Throws:
NotFoundException- a node identified by the givenIdwas not foundNullArgumentException-idisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-