Interface PoolQuery

All Superinterfaces:
Extensible, OsidBrowsableQuery, OsidExtensibleQuery, OsidGovernatorQuery, OsidIdentifiableQuery, OsidObjectQuery, OsidOperableQuery, OsidQuery, OsidSourceableQuery, OsidSubjugateableQuery, Suppliable

public interface PoolQuery extends OsidGovernatorQuery, OsidSubjugateableQuery

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

  • Method Details

    • matchBrokerId

      void matchBrokerId(Id brokerId, boolean match)
      Sets the broker Id for this query.
      Parameters:
      brokerId - the broker Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - brokerId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearBrokerIdTerms

      void clearBrokerIdTerms()
      Clears the broker Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsBrokerQuery

      boolean supportsBrokerQuery()
      Tests if a BrokerQuery is available.
      Returns:
      true if a broker query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getBrokerQuery

      BrokerQuery getBrokerQuery()
      Gets the query for a broker. Multiple retrievals produce a nested OR term.
      Returns:
      the broker query
      Throws:
      UnimplementedException - supportsBrokerQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsBrokerQuery()} is {@code true} .
    • clearBrokerTerms

      void clearBrokerTerms()
      Clears the broker query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchSupplierId

      void matchSupplierId(Id supplierId, boolean match)
      Sets the supplier Id for this query.
      Parameters:
      supplierId - the supplier Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - supplierId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearSupplierIdTerms

      void clearSupplierIdTerms()
      Clears the supplier Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsSupplierQuery

      boolean supportsSupplierQuery()
      Tests if a ResourceQuery is available.
      Returns:
      true if a supplier query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getSupplierQuery

      ResourceQuery getSupplierQuery()
      Gets the query for a supplier. Multiple retrievals produce a nested OR term.
      Returns:
      the supplier query
      Throws:
      UnimplementedException - supportsSupplierQuery() is false
      Compliance:
      mandatory - This method must be implemented.
    • matchAnySupplier

      void matchAnySupplier(boolean match)
      Matches pools that have any supplier.
      Parameters:
      match - true to match pools with any supplier, false to match pools with no supplier
      Compliance:
      mandatory - This method must be implemented.
    • clearSupplierTerms

      void clearSupplierTerms()
      Clears the supplier query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchProvisionableId

      void matchProvisionableId(Id provisionableId, boolean match)
      Sets the provisionable Id for this query.
      Parameters:
      provisionableId - the provisionable Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - provisionableId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearProvisionableIdTerms

      void clearProvisionableIdTerms()
      Clears the provisionable Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsProvisionableQuery

      boolean supportsProvisionableQuery()
      Tests if a ProvisionableQuery is available.
      Returns:
      true if a provisionable query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getProvisionableQuery

      ProvisionableQuery getProvisionableQuery()
      Gets the query for a PoolQntry . Multiple retrievals produce a nested OR term.
      Returns:
      the provisionable query
      Throws:
      UnimplementedException - supportsProvisionableQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsProvisionableQuery()} is {@code true} .
    • matchAnyProvisionable

      void matchAnyProvisionable(boolean match)
      Matches pools that have any provisionable.
      Parameters:
      match - true to match pools with any provisionable, false to match pools with no provisionable
      Compliance:
      mandatory - This method must be implemented.
    • clearProvisionableTerms

      void clearProvisionableTerms()
      Clears the provisionable query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchSize

      void matchSize(long start, long end, boolean match)
      Matches pools of the given size inclusive.
      Parameters:
      start - start of range
      end - end of range
      match - true for a positive match, false for a negative match
      Throws:
      InvalidArgumentException - start is greater than end
      Compliance:
      mandatory - This method must be implemented.
    • matchAnySize

      void matchAnySize(boolean match)
      Matches pools with any known size.
      Parameters:
      match - true for a positive match, false for a negative match
      Compliance:
      mandatory - This method must be implemented.
    • clearSizeTerms

      void clearSizeTerms()
      Clears the size query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchDistributorId

      void matchDistributorId(Id distributorId, boolean match)
      Sets the distributor Id for this query to match queues assigned to distributors.
      Parameters:
      distributorId - the distributor Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - distributorId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearDistributorIdTerms

      void clearDistributorIdTerms()
      Clears the distributor Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsDistributorQuery

      boolean supportsDistributorQuery()
      Tests if a DistributorQuery is available.
      Returns:
      true if a distributor query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getDistributorQuery

      DistributorQuery getDistributorQuery()
      Gets the query for a distributor. Multiple retrievals produce a nested OR term.
      Returns:
      the distributor query
      Throws:
      UnimplementedException - supportsDistributorQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsDistributorQuery()} is {@code true} .
    • clearDistributorTerms

      void clearDistributorTerms()
      Clears the distributor query terms.
      Compliance:
      mandatory - This method must be implemented.
    • getPoolQueryRecord

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