Interface PathSearchOrder

All Superinterfaces:
Extensible, OsidAggregateableSearchOrder, OsidBrowsableSearchOrder, OsidExtensibleSearchOrder, OsidIdentifiableSearchOrder, OsidObjectSearchOrder, OsidRelationshipSearchOrder, OsidSearchOrder, OsidTemporalSearchOrder, Suppliable

public interface PathSearchOrder extends OsidRelationshipSearchOrder, OsidAggregateableSearchOrder

An interface for specifying the ordering of search results.

  • Method Details

    • orderByStartingNode

      void orderByStartingNode(SearchOrderStyle style)
      Specifies a preference for ordering the result set by the starting node.
      Parameters:
      style - search order style
      Throws:
      NullArgumentException - style is null
      Compliance:
      mandatory - This method must be implemented.
    • supportsStartingNodeSearchOrder

      boolean supportsStartingNodeSearchOrder()
      Tests if a starting node search order is available.
      Returns:
      true if a node search order is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getStartingNodeSearchOrder

      NodeSearchOrder getStartingNodeSearchOrder()
      Gets a starting node search order.
      Returns:
      a node search order
      Throws:
      UnimplementedException - supportsStartingNodeSearchOrder() is false
      Compliance:
      optional - This method must be implemented if {@code supportsStartingNodeSearchOrder()} is {@code true} .
    • orderByEndingNode

      void orderByEndingNode(SearchOrderStyle style)
      Specifies a preference for ordering the result set by the starting node.
      Parameters:
      style - search order style
      Throws:
      NullArgumentException - style is null
      Compliance:
      mandatory - This method must be implemented.
    • supportsEndingNodeSearchOrder

      boolean supportsEndingNodeSearchOrder()
      Tests if an ending node search order is available.
      Returns:
      true if a node search order is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getEndingNodeSearchOrder

      NodeSearchOrder getEndingNodeSearchOrder()
      Gets an ending node search order.
      Returns:
      a node search order
      Throws:
      UnimplementedException - supportsEndingNodeSearchOrder() is false
      Compliance:
      optional - This method must be implemented if {@code supportsEndingNodeSearchOrder()} is {@code true} .
    • orderByComplete

      void orderByComplete(SearchOrderStyle style)
      Specifies a preference for ordering the result set by the complete state.
      Parameters:
      style - search order style
      Throws:
      NullArgumentException - style is null
      Compliance:
      mandatory - This method must be implemented.
    • orderByClosed

      void orderByClosed(SearchOrderStyle style)
      Specifies a preference for ordering the result set by the open and closed paths.
      Parameters:
      style - search order style
      Throws:
      NullArgumentException - style is null
      Compliance:
      mandatory - This method must be implemented.
    • orderByHops

      void orderByHops(SearchOrderStyle style)
      Specifies a preference for ordering the result set by the number of hops in the path.
      Parameters:
      style - search order style
      Throws:
      NullArgumentException - style is null
      Compliance:
      mandatory - This method must be implemented.
    • orderByDistance

      void orderByDistance(SearchOrderStyle style)
      Specifies a preference for ordering the result set by the path distance.
      Parameters:
      style - search order style
      Throws:
      NullArgumentException - style is null
      Compliance:
      mandatory - This method must be implemented.
    • orderByCost

      void orderByCost(SearchOrderStyle style)
      Specifies a preference for ordering the result set by the path cost.
      Parameters:
      style - search order style
      Throws:
      NullArgumentException - style is null
      Compliance:
      mandatory - This method must be implemented.
    • getPathSearchOrderRecord

      PathSearchOrderRecord getPathSearchOrderRecord(Type pathRecordType) throws OperationFailedException
      Gets the path search order record corresponding to the given path record Type . Multiple retrievals return the same underlying object.
      Parameters:
      pathRecordType - a path record type
      Returns:
      the path search order record
      Throws:
      NullArgumentException - pathRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(pathRecordType) is false
      Compliance:
      mandatory - This method must be implemented.