Interface TermHierarchyDesignSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session defines methods for managing a hierarchy of Terms
. Each node in the hierarchy is a unique Term.
Like all OsidSessions, TermHierarchyDesignSessions are
dedicated to single processing threads and a single authenticated user.
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddChildTerm(Id termId, Id childId) Adds a child to a term.voidaddRootTerm(Id termId) Adds a root term.booleanTests if this user can change the hierarchy.Gets the hierarchy associated with this session.Gets the hierarchyIdassociated with this session.voidremoveChildTerm(Id termId, Id childId) Removes a child from a term.voidremoveChildTerms(Id termId) Removes all children from a term.voidremoveRootTerm(Id termId) Removes a root term.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatTypes, getLocales, isAuthenticated, startTransaction, supportsTransactions
-
Method Details
-
getTermHierarchyId
Id getTermHierarchyId()Gets the hierarchyIdassociated with this session.- Returns:
- the hierarchy
Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getTermHierarchy
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.
-
canModifyTermHierarchy
boolean canModifyTermHierarchy()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.
-
addRootTerm
void addRootTerm(Id termId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Adds a root term.- Parameters:
termId- theIdof a term- Throws:
AlreadyExistsException-termIdis already in hierarchyNotFoundException-termIdnot foundNullArgumentException-termIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
removeRootTerm
void removeRootTerm(Id termId) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes a root term.- Parameters:
termId- theIdof a term- Throws:
NotFoundException-termIdnot a root nodeNullArgumentException-termIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
addChildTerm
void addChildTerm(Id termId, Id childId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Adds a child to a term.- Parameters:
termId- theIdof a termchildId- theIdof the new child- Throws:
AlreadyExistsException-termIdis already a parent ofchildIdNotFoundException-termIdorchildIdnot foundNullArgumentException-termIdorchildIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
removeChildTerm
void removeChildTerm(Id termId, Id childId) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes a child from a term.- Parameters:
termId- theIdof a termchildId- theIdof the new child- Throws:
NotFoundException-termIdnot a parent ofchildIdNullArgumentException-termIdorchildIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
removeChildTerms
void removeChildTerms(Id termId) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes all children from a term.- Parameters:
termId- theIdof a term- Throws:
NotFoundException-termId isnot in hierarchyNullArgumentException-termIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-