Interface DeviceQuery

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

public interface DeviceQuery extends OsidObjectQuery

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

  • Method Details

    • matchSystemId

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

      void clearSystemIdTerms()
      Clears the system Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsSystemQuery

      boolean supportsSystemQuery()
      Tests if a SystemQuery is available.
      Returns:
      true if a system query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getSystemQuery

      SystemQuery getSystemQuery()
      Gets the query for a system. Multiple retrievals produce a nested OR term.
      Returns:
      the system query
      Throws:
      UnimplementedException - supportsSystemQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsSystemQuery()} is {@code true} .
    • clearSystemTerms

      void clearSystemTerms()
      Clears the system query terms.
      Compliance:
      mandatory - This method must be implemented.
    • getDeviceQueryRecord

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