Interface MeterQuery

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

public interface MeterQuery extends OsidObjectQuery

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

  • Method Details

    • matchUtilityId

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

      void clearUtilityIdTerms()
      Clears the utility Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsUtilityQuery

      boolean supportsUtilityQuery()
      Tests if a UtilityQuery is available.
      Returns:
      true if a utility query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getUtilityQuery

      UtilityQuery getUtilityQuery()
      Gets the query for a utility. Multiple retrievals produce a nested OR term.
      Returns:
      the utility query
      Throws:
      UnimplementedException - supportsUtilityQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsUtilityQuery()} is {@code true} .
    • clearUtilityTerms

      void clearUtilityTerms()
      Clears the utility query terms.
      Compliance:
      mandatory - This method must be implemented.
    • getMeterQueryRecord

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