Interface DistributorHierarchyDesignSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session defines methods for managing a hierarchy of
Distributor objects. Each node in the hierarchy is a unique
Distributor.
Like all OsidSessions,
DistributorHierarchyDesignSessions are dedicated to single processing
threads and a single authenticated user.
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddChildDistributor(Id distributorId, Id childId) Adds a child to a distributor.voidaddRootDistributor(Id distributorId) Adds a root distributor.booleanTests if this user can change the hierarchy.Gets the hierarchy associated with this session.Gets the hierarchyIdassociated with this session.voidremoveChildDistributor(Id distributorId, Id childId) Removes a child from a distributor.voidremoveChildDistributors(Id distributorId) Removes all children from a distributor.voidremoveRootDistributor(Id distributorId) Removes a root distributor.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatTypes, getLocales, isAuthenticated, startTransaction, supportsTransactions
-
Method Details
-
getDistributorHierarchyId
Id getDistributorHierarchyId()Gets the hierarchyIdassociated with this session.- Returns:
- the hierarchy
Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getDistributorHierarchy
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.
-
canModifyDistributorHierarchy
boolean canModifyDistributorHierarchy()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.
-
addRootDistributor
void addRootDistributor(Id distributorId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Adds a root distributor.- Parameters:
distributorId- theIdof a distributor- Throws:
AlreadyExistsException-distributorIdis already in hierarchyNotFoundException-distributorIdnot foundNullArgumentException-distributorIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
removeRootDistributor
void removeRootDistributor(Id distributorId) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes a root distributor.- Parameters:
distributorId- theIdof a distributor- Throws:
NotFoundException-distributorIdis not a rootNullArgumentException-distributorIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
addChildDistributor
void addChildDistributor(Id distributorId, Id childId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Adds a child to a distributor.- Parameters:
distributorId- theIdof a distributorchildId- theIdof the new child- Throws:
AlreadyExistsException-distributorIdis already a parent ofchildIdNotFoundException-distributorIdorchildIdnot foundNullArgumentException-distributorIdorchildIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
removeChildDistributor
void removeChildDistributor(Id distributorId, Id childId) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes a child from a distributor.- Parameters:
distributorId- theIdof a distributorchildId- theIdof the new child- Throws:
NotFoundException-distributorIdis not parent ofchildIdNullArgumentException-distributorIdorchildIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
removeChildDistributors
void removeChildDistributors(Id distributorId) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes all children from a distributor.- Parameters:
distributorId- theIdof a distributor- Throws:
NotFoundException-distributorIdis not foundNullArgumentException-distributorIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-