Interface ItemSearchOrder

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

public interface ItemSearchOrder extends OsidRelationshipSearchOrder

An interface for specifying the ordering of search results.

  • Method Details

    • orderByOrder

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

      boolean supportsOrderSearchOrder()
      Tests if an order order is available.
      Returns:
      true if an order order is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getOrderSearchOrder

      OrderSearchOrder getOrderSearchOrder()
      Gets the order order.
      Returns:
      the order search order
      Throws:
      UnimplementedException - supportsOrderSearchOrder() is false
      Compliance:
      optional - This method must be implemented if {@code supportsOrderSearchOrder()} is {@code true} .
    • orderByDerived

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

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

      boolean supportsProductSearchOrder()
      Tests if a product order is available.
      Returns:
      true if a product order is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getProductSearchOrder

      ProductSearchOrder getProductSearchOrder()
      Gets the product order.
      Returns:
      the product search order
      Throws:
      UnimplementedException - supportsProductSearchOrder() is false
      Compliance:
      optional - This method must be implemented if {@code supportsProductSearchOrder()} is {@code true} .
    • orderByQuantity

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

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