| Interface | osid.ordering.ProductQuery | ||
|---|---|---|---|
| Implements | osid.OsidObjectQuery | ||
| Description | This is the query for searching for products. Each method 
                specifies an  | ||
| Method | matchCode | ||
| Description | Matches product codes. | ||
| Parameters | string | code | a product code | 
| osid.type.Type | stringMatchType | a string match type | |
| boolean | match |  true for a positive match, false for a 
negative match | |
| Errors | INVALID_ARGUMENT |  code not of stringMatchType  | |
| NULL_ARGUMENT |  code or stringMatchType is null 
 | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | matchAnyCode | ||
| Description | Matches products with any code. | ||
| Parameters | boolean | match |  true to match products with any code, false to match products with no code | 
| Compliance | mandatory | This method must be implemented. | |
| Method | clearCodeTerms | ||
| Description | Clears the code. | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | matchPriceScheduleId | ||
| Description | Sets the price schedule  | ||
| Parameters | osid.id.Id | priceScheduleId | a price schedule  Id  | 
| boolean | match |  true for a positive match, false for a 
negative match | |
| Errors | NULL_ARGUMENT |  priceScheduleId is null  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | clearPriceScheduleIdTerms | ||
| Description | Clears the price schedule  | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | supportsPriceScheduleQuery | ||
| Description | Tests if a price schedule query is available. | ||
| Return | boolean |  true if a price schedule query is available, false 
otherwise | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getPriceScheduleQuery | ||
| Description | Gets the query for a price schedule. | ||
| Return | osid.ordering.PriceScheduleQuery | the price schedule query | |
| Errors | UNIMPLEMENTED |  supportsPriceScheduleQuery() is false  | |
| Compliance | optional | This method must be implemented if  supportsPriceScheduleQuery() 
is true.  | |
| Method | matchAnyPriceSchedule | ||
| Description | Matches products with any price schedule. | ||
| Parameters | boolean | match |  true to match products with any price schedule, false 
to match products with no price schedule | 
| Compliance | mandatory | This method must be implemented. | |
| Method | clearPriceScheduleTerms | ||
| Description | Clears the price schedule terms. | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | matchAvailability | ||
| Description | Matches product availability between the given range inclusive. | ||
| Parameters | cardinal | low | a product code | 
| cardinal | high | a string match type | |
| boolean | match |  true for a positive match, false for a 
negative match | |
| Errors | INVALID_ARGUMENT |  low is greater than high  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | matchAnyAvailability | ||
| Description | Matches products with any availability set. | ||
| Parameters | boolean | match |  true to match products with anyavailability value, 
false to match products with no availability value | 
| Compliance | mandatory | This method must be implemented. | |
| Method | clearAvailabilityTerms | ||
| Description | Clears the availability terms. | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | matchItemId | ||
| Description | Sets the item  | ||
| Parameters | osid.id.Id | itemId | an item  Id  | 
| boolean | match |  true for a positive match, false for a 
negative match | |
| Errors | NULL_ARGUMENT |  priceScheduleId is null  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | clearItemIdTerms | ||
| Description | Clears the item  | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | supportsItemQuery | ||
| Description | Tests if an item query is available. | ||
| Return | boolean |  true if an item query is available, false otherwise | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getItemQuery | ||
| Description | Gets the query for an item. | ||
| Return | osid.ordering.ItemQuery | the item query | |
| Errors | UNIMPLEMENTED |  supportsItemQuery() is false  | |
| Compliance | optional | This method must be implemented if  supportsItemQuery() is true.  | |
| Method | matchAnyItem | ||
| Description | Matches prices used with any item. | ||
| Parameters | boolean | match |  true to match prices with any order, false to 
match prices with no orders | 
| Compliance | mandatory | This method must be implemented. | |
| Method | clearItemTerms | ||
| Description | Clears the item terms. | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | matchStoreId | ||
| Description | Sets the product  | ||
| Parameters | osid.id.Id | storeId | a store  Id  | 
| boolean | match |  true for a positive match, false for a 
negative match | |
| Errors | NULL_ARGUMENT |  storeId is null  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | clearStoreIdTerms | ||
| Description | Clears the store  | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | supportsStoreQuery | ||
| Description | Tests if a  | ||
| Return | boolean |  true if a store query is available, false otherwise | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getStoreQuery | ||
| Description | Gets the query for a store query. Multiple retrievals 
                    produce a nested  | ||
| Return | osid.ordering.StoreQuery | the store query | |
| Errors | UNIMPLEMENTED |  supportsStoreQuery() is false  | |
| Compliance | optional | This method must be implemented if  supportsStoreQuery() is true.  | |
| Method | clearStoreTerms | ||
| Description | Clears the store terms. | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getProductQueryRecord | ||
| Description | Gets the product query record corresponding to the 
                    given  | ||
| Parameters | osid.type.Type | productRecordType | an product record type | 
| Return | osid.ordering.records.ProductQueryRecord | the product query record | |
| Errors | NULL_ARGUMENT |  productRecordType is null  | |
| OPERATION_FAILED | unable to complete request | ||
| UNSUPPORTED |  hasRecordType(productRecordType) is false  | ||
| Compliance | mandatory | This method must be implemented. | |