Interface ObjectiveBankHierarchyDesignSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session defines methods for managing a hierarchy of
ObjectiveBanks. Each node in the hierarchy is a unique
ObjectiveBank.
Like all OsidSessions,
ObjectiveBankHierarchyDesignSessions are dedicated to single processing
threads and a single authenticated user.
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddChildObjectiveBank(Id objectiveBankId, Id childId) Adds a child to an objective bank.voidaddRootObjectiveBank(Id objectiveBankId) Adds a root objective bank.booleanTests if this user can change the hierarchy.Gets the hierarchy associated with this session.Gets the hierarchyIdassociated with this session.voidremoveChildObjectiveBank(Id objectiveBankId, Id childId) Removes a child from an objective bank.voidremoveChildObjectiveBanks(Id objectiveBankId) Removes all children from an objective bank.voidremoveRootObjectiveBank(Id objectiveBankId) Removes a root objective bank.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatTypes, getLocales, isAuthenticated, startTransaction, supportsTransactions
-
Method Details
-
getObjectiveBankHierarchyId
Id getObjectiveBankHierarchyId()Gets the hierarchyIdassociated with this session.- Returns:
- the hierarchy
Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getObjectiveBankHierarchy
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.
-
canModifyObjectiveBankHierarchy
boolean canModifyObjectiveBankHierarchy()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.
-
addRootObjectiveBank
void addRootObjectiveBank(Id objectiveBankId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Adds a root objective bank.- Parameters:
objectiveBankId- theIdof an objective bank- Throws:
AlreadyExistsException-objectiveBankIdis already in hierarchyNotFoundException-objectiveBankIdnot foundNullArgumentException-objectiveBankIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
removeRootObjectiveBank
void removeRootObjectiveBank(Id objectiveBankId) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes a root objective bank.- Parameters:
objectiveBankId- theIdof an objective bank- Throws:
NotFoundException-objectiveBankIdis not a rootNullArgumentException-objectiveBankIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
addChildObjectiveBank
void addChildObjectiveBank(Id objectiveBankId, Id childId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Adds a child to an objective bank.- Parameters:
objectiveBankId- theIdof an objective bankchildId- theIdof the new child- Throws:
AlreadyExistsException-objectiveBankIdis already a parent ofchildIdNotFoundException-objectiveBankIdorchildIdnot foundNullArgumentException-objectiveBankIdorchildIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
removeChildObjectiveBank
void removeChildObjectiveBank(Id objectiveBankId, Id childId) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes a child from an objective bank.- Parameters:
objectiveBankId- theIdof an objective bankchildId- theIdof the child- Throws:
NotFoundException-objectiveBankIdnot a parent ofchildIdNullArgumentException-objectiveBankIdorchildIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
removeChildObjectiveBanks
void removeChildObjectiveBanks(Id objectiveBankId) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes all children from an objective bank.- Parameters:
objectiveBankId- theIdof an objective bank- Throws:
NotFoundException-objectiveBankIdnot in hierarchyNullArgumentException-objectiveBankIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-