Interface ProductSearchSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession, ProductQuerySession

public interface ProductSearchSession extends ProductQuerySession

This session provides methods for searching Product objects. The search query is constructed using the ProductQuery . The product record Type also specifies the record for the product query.

getProductsByQuery() is the basic search method and returns a list of Product elements. A more advanced search may be performed with getProductsBySearch() .It accepts a ProductSearch in addition to the query for the purpose of specifying additional options affecting the entire search, such as ordering. getProductsBySearch() returns a ProductSearchResults that can be used to access the resulting ProductList or be used to perform a search within the result set through ProductSearch .

Products may have a query record indicated by their respective record types. The query record is accessed via the ProductQuery . The returns in this session may not be cast directly to these interfaces.

  • Method Details

    • getProductSearch

      ProductSearch getProductSearch()
      Gets a product search.
      Returns:
      the product search
      Compliance:
      mandatory - This method must be implemented.
    • getProductSearchOrder

      ProductSearchOrder getProductSearchOrder()
      Gets a product search order. The ProductSearchOrder is supplied to a ProductSearch to specify the ordering of results.
      Returns:
      the product search order
      Compliance:
      mandatory - This method must be implemented.
    • getProductsBySearch

      ProductSearchResults getProductsBySearch(ProductQuery productQuery, ProductSearch productSearch) throws OperationFailedException, PermissionDeniedException
      Gets the search results matching the given search.
      Parameters:
      productQuery - the product query
      productSearch - the product search
      Returns:
      the product search results
      Throws:
      NullArgumentException - productQuery or productSearch is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - productQuery or productSearch is not of this service
      Compliance:
      mandatory - This method must be implemented.
    • getProductQueryFromInspector

      ProductQuery getProductQueryFromInspector(ProductQueryInspector productQueryInspector)
      Gets a product query from an inspector. The inspector is available from a ProductSearchResults .
      Parameters:
      productQueryInspector - a query inspector
      Returns:
      the product query
      Throws:
      NullArgumentException - productQueryInspector is null
      UnsupportedException - productQueryInspector is not of this service
      Compliance:
      mandatory - This method must be implemented.