Interface HierarchySequencingSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface HierarchySequencingSession extends OsidSession

This session provides methods to sequence the nodes in a hierarchy.

  • Method Details

    • getHierarchyId

      Id getHierarchyId()
      Gets the hierarchy Id associated with this session.
      Returns:
      the hierarchy Id associated 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 request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canSequenceHierarchy

      boolean canSequenceHierarchy()
      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 a PERMISSION_DENIED . This is intended as a hint to an application that may opt not to offer these operations to an unauthorized user.
      Returns:
      false if changing this hierarchy is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • moveNodeAhead

      void moveNodeAhead(Id parentId, Id referenceId, Id id) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Moves a node ahead of a refrence node under the given parent.
      Parameters:
      parentId - the Id of the parent node
      referenceId - the Id of the node
      id - the Id of the node to move ahead of referenceId
      Throws:
      NotFoundException - parentId, referenceId , or id not found, or referenceId or id is not a child of parentId
      NullArgumentException - parentId, referenceId , or id is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • moveNodeBehind

      void moveNodeBehind(Id parentId, Id referenceId, Id id) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Moves a node behind a refrence node under the given parent.
      Parameters:
      parentId - the Id of the parent node
      referenceId - the Id of the node
      id - the Id of the node to move behind referenceId
      Throws:
      NotFoundException - parentId, referenceId , or id not found, or referenceId or id is not a child of parentId
      NullArgumentException - parentId, referenceId , or id is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • sequenceNodes

      void sequenceNodes(Id parentId, Id[] ids) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Sequences a set of nodes under a parent.
      Parameters:
      parentId - the Id of the parent node
      ids - the Ids of the nodes
      Throws:
      NotFoundException - parentId or an id not found, or an id is not a child of parentId
      NullArgumentException - parentId or ids is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.