Interface ProfileItemQuery

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

public interface ProfileItemQuery extends OsidObjectQuery

This is the query for searching profile items. Each method match request produces an AND term while multiple invocations of a method produces a nested OR .

  • Method Details

    • matchProfileEntryId

      void matchProfileEntryId(Id profileEntryId, boolean match)
      Sets the pofile entry Id for this query.
      Parameters:
      profileEntryId - a profile entry Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - profileEntryId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearProfileEntryIdTerms

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

      boolean supportsProfileEntryQuery()
      Tests if an ProfileEntryQuery is available.
      Returns:
      true if a profile entry query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getProfileEntryQuery

      ProfileEntryQuery getProfileEntryQuery()
      Gets the query for a profile entry. Multiple retrievals produce a nested OR term.
      Returns:
      the profile entry query
      Throws:
      UnimplementedException - supportsProfileEntryQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsProfileEntryQuery()} is {@code true} .
    • matchAnyProfileEntry

      void matchAnyProfileEntry(boolean match)
      Matches profile items that have any profile entry mapping.
      Parameters:
      match - true to match items with any entry mapping, false to match items with no entry mapping
      Compliance:
      mandatory - This method must be implemented.
    • clearProfileEntryTerms

      void clearProfileEntryTerms()
      Clears the profile entry query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchProfileId

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

      void clearProfileIdTerms()
      Clears the profile Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsProfileQuery

      boolean supportsProfileQuery()
      Tests if a ProfileQuery is available.
      Returns:
      true if a profile query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getProfileQuery

      ProfileQuery getProfileQuery()
      Gets the query for a profile. Multiple retrievals produce a nested OR term.
      Returns:
      the profile query
      Throws:
      UnimplementedException - supportsProfileQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsProfileQuery()} is {@code true} .
    • clearProfileTerms

      void clearProfileTerms()
      Clears the profile entry query terms.
      Compliance:
      mandatory - This method must be implemented.
    • getProfileItemQueryRecord

      ProfileItemQueryRecord getProfileItemQueryRecord(Type profileItemRecordType) throws OperationFailedException
      Gets the profile item query record corresponding to the given ProfileItem record Type . Multiple retrievals produce a nested OR term.
      Parameters:
      profileItemRecordType - a profile item record type
      Returns:
      the profile item query record
      Throws:
      NullArgumentException - profileItemRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(profileItemRecordType) is false
      Compliance:
      mandatory - This method must be implemented.