public interface CourseCatalogHierarchySession extends OsidSession
This session defines methods for traversing a hierarchy of
CourseCatalog objects. Each node in the hierarchy is a unique
CourseCatalog. The hierarchy may be traversed recursively
to establish the tree structure through getParentCourseCatalogs()
and getChildCourseCatalogs(). To relate these
Ids to another OSID, getCourseCatalogNodes()
can be used for retrievals that can be used for bulk lookups in other
OSIDs. Any CourseCatalog available in the Course OSID is
known to this hierarchy but does not appear in the hierarchy traversal
until added as a root node or a child of another node.
A user may not be authorized to traverse the entire hierarchy. Parts
of the hierarchy may be made invisible through omission from the returns
of getParentCourseCatalogs() or
getChildCourseCatalog() in lieu of a PERMISSION_DENIED
error that may disrupt the traversal through authorized pathways.
This session defines views that offer differing behaviors when retrieving multiple objects.
| Modifier and Type | Method and Description |
|---|---|
boolean |
canAccessCourseCatalogHierarchy()
Tests if this user can perform hierarchy queries.
|
IdList |
getChildCourseCatalogIds(Id courseCatalogId)
Gets the child
Ids of the given course catalog. |
CourseCatalogList |
getChildCourseCatalogs(Id courseCatalogId)
Gets the children of the given course catalog.
|
Hierarchy |
getCourseCatalogHierarchy()
Gets the hierarchy associated with this session.
|
Id |
getCourseCatalogHierarchyId()
Gets the hierarchy
Id associated with this session. |
Node |
getCourseCatalogNodeIds(Id courseCatalogId,
long ancestorLevels,
long descendantLevels,
boolean includeSiblings)
Gets a portion of the hierarchy for the given course catalog.
|
CourseCatalogNode |
getCourseCatalogNodes(Id courseCatalogId,
long ancestorLevels,
long descendantLevels,
boolean includeSiblings)
Gets a portion of the hierarchy for the given course catalog.
|
IdList |
getParentCourseCatalogIds(Id courseCatalogId)
Gets the parent
Ids of the given course catalog. |
CourseCatalogList |
getParentCourseCatalogs(Id courseCatalogId)
Gets the parents of the given course catalog.
|
IdList |
getRootCourseCatalogIds()
Gets the root course catalog
Ids in this hierarchy. |
CourseCatalogList |
getRootCourseCatalogs()
Gets the root course catalogs in the course catalog hierarchy.
|
boolean |
hasChildCourseCatalogs(Id courseCatalogId)
Tests if a course catalog has any children.
|
boolean |
hasParentCourseCatalogs(Id courseCatalogId)
Tests if the
CourseCatalog has any parents. |
boolean |
isAncestorOfCourseCatalog(Id id,
Id courseCatalogId)
Tests if an
Id is an ancestor of a course catalog. |
boolean |
isChildOfCourseCatalog(Id id,
Id courseCatalogId)
Tests if a course catalog is a direct child of another.
|
boolean |
isDescendantOfCourseCatalog(Id id,
Id courseCatalogId)
Tests if an
Id is a descendant of a course catalog. |
boolean |
isParentOfCourseCatalog(Id id,
Id courseCatalogId)
Tests if an
Id is a direct parent of course catalog. |
void |
useComparativeCourseCatalogView()
The returns from the course catalog methods may omit or translate
elements based on this session, such as authorization, and not result
in an error.
|
void |
usePlenaryCourseCatalogView()
A complete view of the
CourseCatalogs returns is
desired. |
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionscloseId getCourseCatalogHierarchyId()
Id associated with this session. Id associated with this sessionmandatory - This method must be implemented. Hierarchy getCourseCatalogHierarchy() throws OperationFailedException, PermissionDeniedException
OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. boolean canAccessCourseCatalogHierarchy()
PERMISSION_DENIED. This is intended as a hint to an
application that may opt not to offer lookup operations. false if hierarchy traversal methods are not
authorized, true otherwisemandatory - This method must be implemented. void useComparativeCourseCatalogView()
mandatory - This method is must be implemented. void usePlenaryCourseCatalogView()
CourseCatalogs returns is
desired. Methods will return what is requested or result in an error.
This view is used when greater precision is desired at the expense of
interoperability.mandatory - This method is must be implemented. IdList getRootCourseCatalogIds() throws OperationFailedException, PermissionDeniedException
Ids in this hierarchy. Ids OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. CourseCatalogList getRootCourseCatalogs() throws OperationFailedException, PermissionDeniedException
OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method is must be implemented. boolean hasParentCourseCatalogs(Id courseCatalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException
CourseCatalog has any parents.courseCatalogId - a catalog Id true if the catalog has parents, f alse
otherwiseNotFoundException - courseCatalogId is
not foundNullArgumentException - courseCatalogId
is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. boolean isParentOfCourseCatalog(Id id, Id courseCatalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException
Id is a direct parent of course catalog.id - an Id courseCatalogId - the Id of a catalog true if this id is a parent of
courseCatalogId, f alse
otherwiseNotFoundException - courseCatalogId is
not foundNullArgumentException - id or
courseCatalogId is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. If - id not found return false. IdList getParentCourseCatalogIds(Id courseCatalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException
Ids of the given course catalog.courseCatalogId - a catalog Id NotFoundException - courseCatalogId is
not foundNullArgumentException - courseCatalogId
is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. CourseCatalogList getParentCourseCatalogs(Id courseCatalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException
courseCatalogId - the Id to queryNotFoundException - courseCatalogId not
foundNullArgumentException - courseCatalogId
is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. boolean isAncestorOfCourseCatalog(Id id, Id courseCatalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException
Id is an ancestor of a course catalog.id - an Id courseCatalogId - the Id of a catalog tru e if this id is an ancestor
of courseCatalogId, false
otherwiseNotFoundException - courseCatalogId not
foundNullArgumentException - courseCatalogId
or id is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. If - id not found return false. boolean hasChildCourseCatalogs(Id courseCatalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException
courseCatalogId - a course catalog Id true if the courseCatalogId has
children, false otherwiseNotFoundException - courseCatalogId not
foundNullArgumentException - courseCatalogId
is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. boolean isChildOfCourseCatalog(Id id, Id courseCatalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException
id - an Id courseCatalogId - the Id of a catalog true if the id is a child of
courseCatalogId, false otherwiseNotFoundException - courseCatalogId not
foundNullArgumentException - id or
courseCatalogId is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. If - id not found return false. IdList getChildCourseCatalogIds(Id courseCatalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException
Ids of the given course catalog.courseCatalogId - the Id to queryNotFoundException - courseCatalogId not
foundNullArgumentException - courseCatalogId
is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. CourseCatalogList getChildCourseCatalogs(Id courseCatalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException
courseCatalogId - the Id to queryNotFoundException - courseCatalogId not
foundNullArgumentException - courseCatalogId
is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. boolean isDescendantOfCourseCatalog(Id id, Id courseCatalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException
Id is a descendant of a course catalog.id - an Id courseCatalogId - the Id of a catalog true if the id is a descendant
of the courseCatalogId, false
otherwiseNotFoundException - courseCatalogId not
foundNullArgumentException - id or
courseCatalogId is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. If - id is not found return false. Node getCourseCatalogNodeIds(Id courseCatalogId, long ancestorLevels, long descendantLevels, boolean includeSiblings) throws NotFoundException, OperationFailedException, PermissionDeniedException
courseCatalogId - the Id to queryancestorLevels - the maximum number of ancestor levels to
include. A value of 0 returns no parents in the node.descendantLevels - the maximum number of descendant levels to
include. A value of 0 returns no children in the node.includeSiblings - true to include the siblings of
the given node, false to omit the siblingsNotFoundException - courseCatalogId not
foundNullArgumentException - courseCatalogId
is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented. CourseCatalogNode getCourseCatalogNodes(Id courseCatalogId, long ancestorLevels, long descendantLevels, boolean includeSiblings) throws NotFoundException, OperationFailedException, PermissionDeniedException
courseCatalogId - the Id to queryancestorLevels - the maximum number of ancestor levels to
include. A value of 0 returns no parents in the node.descendantLevels - the maximum number of descendant levels to
include. A value of 0 returns no children in the node.includeSiblings - true to include the siblings of
the given node, false to omit the siblingsNotFoundException - courseCatalogId not
foundNullArgumentException - courseCatalogId
is null OperationFailedException - unable to complete requestPermissionDeniedException - authorization failuremandatory - This method must be implemented.