Interface InventoryQuerySession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
All Known Subinterfaces:
InventorySearchSession

public interface InventoryQuerySession extends OsidSession

This session provides methods for searching among Inventories. The search query is constructed using the InventoryQuery.

This session defines views that offer differing behaviors for searching.

  • federated warehouse view: searches include inventories in warehouses of which this warehouse is an ancestor in the warehouse hierarchy
  • isolated warehouse view: searches are restricted to inventories in this warehouse

Inventories may have a query record indicated by their respective record types. The query record is accessed via the InventoryQuery.

  • Method Details

    • getWarehouseId

      Id getWarehouseId()
      Gets the Warehouse Id associated with this session.
      Returns:
      the Warehouse Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getWarehouse

      Gets the Warehouse associated with this session.
      Returns:
      the warehouse
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canSearchInventories

      boolean canSearchInventories()
      Tests if this user can perform Inventory lookups. A return of true does not guarantee successful authorization. A return of false indicates that it is known all methods in this session will result in a PERMISSION_DENIED. This is intended as a hint to an application that may not offer lookup operations to unauthorized users.
      Returns:
      false if search methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useFederatedWarehouseView

      void useFederatedWarehouseView()
      Federates the view for methods in this session. A federated view will include inventories in warehouse which are children of this warehouse in the warehouse hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedWarehouseView

      void useIsolatedWarehouseView()
      Isolates the view for methods in this session. An isolated view restricts lookups to this warehouse only.
      Compliance:
      mandatory - This method is must be implemented.
    • getInventoryQuery

      InventoryQuery getInventoryQuery()
      Gets an inventory query.
      Returns:
      the inventory query
      Compliance:
      mandatory - This method must be implemented.
    • getInventoriesByQuery

      InventoryList getInventoriesByQuery(InventoryQuery inventoryQuery) throws OperationFailedException, PermissionDeniedException
      Gets a list of Inventories matching the given inventory query.
      Parameters:
      inventoryQuery - the inventory query
      Returns:
      the returned InventoryList
      Throws:
      NullArgumentException - inventoryQuery is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - inventoryQuery is not of this service
      Compliance:
      mandatory - This method must be implemented.