Interface BusinessQuery

All Superinterfaces:
Extensible, OsidBrowsableQuery, OsidCatalogQuery, OsidExtensibleQuery, OsidFederateableQuery, OsidIdentifiableQuery, OsidObjectQuery, OsidQuery, OsidSourceableQuery, Suppliable

public interface BusinessQuery extends OsidCatalogQuery

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

  • Method Details

    • matchCustomerId

      void matchCustomerId(Id customerId, boolean match)
      Sets the customer Id for this query to match customers that have a related customer.
      Parameters:
      customerId - a customer Id
      match - true if a positive match, false for a negative match
      Throws:
      NullArgumentException - customerId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearCustomerIdTerms

      void clearCustomerIdTerms()
      Clears the customer Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsCustomerQuery

      boolean supportsCustomerQuery()
      Tests if a CustomerQuery is available.
      Returns:
      true if a customer query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getCustomerQuery

      CustomerQuery getCustomerQuery()
      Gets the query for a customer. Multiple retrievals produce a nested OR term.
      Returns:
      the customer query
      Throws:
      UnimplementedException - supportsCustomerQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsCustomerQuery()} is {@code true} .
    • matchAnyCustomer

      void matchAnyCustomer(boolean match)
      Matches businesses that have any customer.
      Parameters:
      match - true to match customers with any customer, false to match customers with no customer
      Compliance:
      mandatory - This method must be implemented.
    • clearCustomerTerms

      void clearCustomerTerms()
      Clears the customer query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchItemId

      void matchItemId(Id itemId, boolean match)
      Sets the item Id for this query.
      Parameters:
      itemId - an item Id
      match - true if a positive match, false for a negative match
      Throws:
      NullArgumentException - itemId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearItemIdTerms

      void clearItemIdTerms()
      Clears the item Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsItemQuery

      boolean supportsItemQuery()
      Tests if an ItemQuery is available.
      Returns:
      true if an item query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getItemQuery

      ItemQuery getItemQuery()
      Gets the query for an item. Multiple retrievals produce a nested OR term.
      Returns:
      the item query
      Throws:
      UnimplementedException - supportsItemQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsItemQuery()} is {@code true} .
    • matchAnyItem

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

      void clearItemTerms()
      Clears the item query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchCategoryId

      void matchCategoryId(Id categoryId, boolean match)
      Sets the catalog Id for this query.
      Parameters:
      categoryId - a category Id
      match - true if a positive match, false for a negative match
      Throws:
      NullArgumentException - categoryId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearCategoryIdTerms

      void clearCategoryIdTerms()
      Clears the category Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsCategoryQuery

      boolean supportsCategoryQuery()
      Tests if a CategoryQuery is available.
      Returns:
      true if a category query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getCategoryQuery

      CategoryQuery getCategoryQuery()
      Gets the query for a category. Multiple retrievals produce a nested OR term.
      Returns:
      the category query
      Throws:
      UnimplementedException - supportsCategoryQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsCategoryQuery()} is {@code true} .
    • matchAnyCategory

      void matchAnyCategory(boolean match)
      Matches businesses that have any category.
      Parameters:
      match - true to match customers with any category, false to match customers with no category
      Compliance:
      mandatory - This method must be implemented.
    • clearCategoryTerms

      void clearCategoryTerms()
      Clears the category query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchEntryId

      void matchEntryId(Id itemId, boolean match)
      Sets the entry Id for this query.
      Parameters:
      itemId - an entry Id
      match - true if a positive match, false for a negative match
      Throws:
      NullArgumentException - entryId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearEntryIdTerms

      void clearEntryIdTerms()
      Clears the entry Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsEntryQuery

      boolean supportsEntryQuery()
      Tests if an EntryQuery is available.
      Returns:
      true if an entry query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getEntryQuery

      EntryQuery getEntryQuery()
      Gets the query for an entry. Multiple retrievals produce a nested OR term.
      Returns:
      the entry query
      Throws:
      UnimplementedException - supportsEntryQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsEntryQuery()} is {@code true} .
    • matchAnyEntry

      void matchAnyEntry(boolean match)
      Matches businesses that have any entry.
      Parameters:
      match - true to match businesses with any entry, false to match businesses with no entries
      Compliance:
      mandatory - This method must be implemented.
    • clearEntryTerms

      void clearEntryTerms()
      Clears the entry query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchPeriodId

      void matchPeriodId(Id periodId, boolean match)
      Sets the period Id for this query to match catalogs containing terms.
      Parameters:
      periodId - the period Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - periodId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearPeriodIdTerms

      void clearPeriodIdTerms()
      Clears the period Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsPeriodQuery

      boolean supportsPeriodQuery()
      Tests if a PeriodQuery is available.
      Returns:
      true if a period query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getPeriodQuery

      PeriodQuery getPeriodQuery()
      Gets the query for a period Multiple retrievals produce a nested OR term.
      Returns:
      the period query
      Throws:
      UnimplementedException - supportsPeriodQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsPeriodQuery()} is {@code true} .
    • matchAnyPeriod

      void matchAnyPeriod(boolean match)
      Matches businesses that have any period.
      Parameters:
      match - true to match businesses with any period, false to match customers with no period
      Compliance:
      mandatory - This method must be implemented.
    • clearPeriodTerms

      void clearPeriodTerms()
      Clears the period query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchAncestorBusinessId

      void matchAncestorBusinessId(Id businessId, boolean match)
      Sets the business Id for this query to match businesses that have the specified business as an ancestor.
      Parameters:
      businessId - a business Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - businessId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearAncestorBusinessIdTerms

      void clearAncestorBusinessIdTerms()
      Clears the ancestor business Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsAncestorBusinessQuery

      boolean supportsAncestorBusinessQuery()
      Tests if a BusinessQuery is available.
      Returns:
      true if a business query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getAncestorBusinessQuery

      BusinessQuery getAncestorBusinessQuery()
      Gets the query for a business. Multiple retrievals produce a nested OR term.
      Returns:
      the business query
      Throws:
      UnimplementedException - supportsAncestorBusinessQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsAncestorBusinessQuery()} is {@code true} .
    • matchAnyAncestorBusiness

      void matchAnyAncestorBusiness(boolean match)
      Matches businesses with any business ancestor.
      Parameters:
      match - true to match businesses with any ancestor, false to match root businesses
      Compliance:
      mandatory - This method must be implemented.
    • clearAncestorBusinessTerms

      void clearAncestorBusinessTerms()
      Clears the ancestor business query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchDescendantBusinessId

      void matchDescendantBusinessId(Id businessId, boolean match)
      Sets the business Id for this query to match businesses that have the specified business as a descendant.
      Parameters:
      businessId - a business Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - businessId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearDescendantBusinessIdTerms

      void clearDescendantBusinessIdTerms()
      Clears the descendant business Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsDescendantBusinessQuery

      boolean supportsDescendantBusinessQuery()
      Tests if a BusinessQuery is available.
      Returns:
      true if a business query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getDescendantBusinessQuery

      BusinessQuery getDescendantBusinessQuery()
      Gets the query for a business. Multiple retrievals produce a nested OR term.
      Returns:
      the business query
      Throws:
      UnimplementedException - supportsDescendantBusinessQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsDescendantBusinessQuery()} is {@code true} .
    • matchAnyDescendantBusiness

      void matchAnyDescendantBusiness(boolean match)
      Matches businesses with any descendant business.
      Parameters:
      match - true to match businesses with any descendant, false to match leaf businesses
      Compliance:
      mandatory - This method must be implemented.
    • clearDescendantBusinessTerms

      void clearDescendantBusinessTerms()
      Clears the descendant business query terms.
      Compliance:
      mandatory - This method must be implemented.
    • getBusinessQueryRecord

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