Interface ModelQuery

All Superinterfaces:
Extensible, OsidBrowsableQuery, OsidExtensibleQuery, OsidIdentifiableQuery, OsidObjectQuery, OsidQuery, Suppliable

public interface ModelQuery extends OsidObjectQuery

This is the query for searching models. Each method match specifies an AND term while multiple invocations of the same method produce a nested OR .

  • Method Details

    • matchManufacturerId

      void matchManufacturerId(Id resourceId, boolean match)
      Sets the inventory Id for this query to match models that have a related manufacturer.
      Parameters:
      resourceId - a resource Id
      match - true if a positive match, false for a negative match
      Throws:
      NullArgumentException - resourceId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearManufacturerIdTerms

      void clearManufacturerIdTerms()
      Clears the manufacturer terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsManufacturerQuery

      boolean supportsManufacturerQuery()
      Tests if a ManufacturerQuery is available for the location.
      Returns:
      true if a manufacturer query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getManufacturerQuery

      ResourceQuery getManufacturerQuery()
      Gets the query for a manufacturer. Multiple retrievals produce a nested OR term.
      Returns:
      the manufacturer query
      Throws:
      UnimplementedException - supportsManufacturerQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsManufacturerQuery()} is {@code true} .
    • matchAnyManufacturer

      void matchAnyManufacturer(boolean match)
      Matches any manufacturer.
      Parameters:
      match - true to match models with any inventory, false to match models with no inventories
      Compliance:
      mandatory - This method must be implemented.
    • clearManufacturerTerms

      void clearManufacturerTerms()
      Clears the manufacturer terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchArchetype

      void matchArchetype(String archetype, Type stringMatchType, boolean match)
      Matches an archetype.
      Parameters:
      archetype - an archetype for the model
      stringMatchType - a string match type
      match - true if a positive match, false for a negative match
      Throws:
      NullArgumentException - archetype or stringMatchType is null
      UnsupportedException - supportsStringMatchType(stringMatchType) is false
      Compliance:
      mandatory - This method must be implemented.
    • matchAnyArchetype

      void matchAnyArchetype(boolean match)
      Matches items that have any archetype.
      Parameters:
      match - true to match items with any archetype, false to match items with no archetype
      Compliance:
      mandatory - This method must be implemented.
    • clearArchetypeTerms

      void clearArchetypeTerms()
      Clears the archetype terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchNumber

      void matchNumber(String number, Type stringMatchType, boolean match)
      Matches a model number.
      Parameters:
      number - a model number
      stringMatchType - a string match type
      match - true if a positive match, false for a negative match
      Throws:
      NullArgumentException - number or stringMatchType is null
      UnsupportedException - supportsStringMatchType(stringMatchType) is false
      Compliance:
      mandatory - This method must be implemented.
    • matchAnyNumber

      void matchAnyNumber(boolean match)
      Matches items that have any model number.
      Parameters:
      match - true to match items with any model number, false to match items with no model number
      Compliance:
      mandatory - This method must be implemented.
    • clearNumberTerms

      void clearNumberTerms()
      Clears the model number terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchWarehouseId

      void matchWarehouseId(Id warehouseId, boolean match)
      Sets the warehouse Id for this query to match models assigned to warehouses.
      Parameters:
      warehouseId - the warehouse Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - warehouseId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearWarehouseIdTerms

      void clearWarehouseIdTerms()
      Clears the warehouse Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsWarehouseQuery

      boolean supportsWarehouseQuery()
      Tests if a WarehouseQuery is available.
      Returns:
      true if a warehouse query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getWarehouseQuery

      WarehouseQuery getWarehouseQuery()
      Gets the query for a warehouse. Multiple retrievals produce a nested OR term.
      Returns:
      the warehouse query
      Throws:
      UnimplementedException - supportsWarehouseQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsWarehouseQuery()} is {@code true} .
    • clearWarehouseTerms

      void clearWarehouseTerms()
      Clears the warehouse terms.
      Compliance:
      mandatory - This method must be implemented.
    • getModelQueryRecord

      ModelQueryRecord getModelQueryRecord(Type modelRecordType) throws OperationFailedException
      Gets the model query record corresponding to the given Model record Type .Multiple record retrievals produce a nested OR term.
      Parameters:
      modelRecordType - a model record type
      Returns:
      the model query record
      Throws:
      NullArgumentException - modelRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(modelRecordType) is false
      Compliance:
      mandatory - This method must be implemented.