Interface SystemQuery

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

public interface SystemQuery extends OsidCatalogQuery

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

  • Method Details

    • matchDeviceId

      void matchDeviceId(Id deviceId, boolean match)
      Sets the device Id for this query to match systems that have a related device.
      Parameters:
      deviceId - a device Id
      match - true if a positive match, false for negative match
      Throws:
      NullArgumentException - deviceId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearDeviceIdTerms

      void clearDeviceIdTerms()
      Clears the device Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsDeviceQuery

      boolean supportsDeviceQuery()
      Tests if a DeviceQuery is available.
      Returns:
      true if a device query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getDeviceQuery

      DeviceQuery getDeviceQuery()
      Gets the query for a device. Multiple retrievals produce a nested OR term.
      Returns:
      the device query
      Throws:
      UnimplementedException - supportsDeviceQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsDeviceQuery()} is {@code true} .
    • matchAnyDevice

      void matchAnyDevice(boolean match)
      Matches systems that have any device.
      Parameters:
      match - true to match systems with any device, false to match systems with no device
      Compliance:
      mandatory - This method must be implemented.
    • clearDeviceTerms

      void clearDeviceTerms()
      Clears the device query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchControllerId

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

      void clearControllerIdTerms()
      Clears the controller Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsControllerQuery

      boolean supportsControllerQuery()
      Tests if a ControllerQuery is available.
      Returns:
      true if a controller query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getControllerQuery

      ControllerQuery getControllerQuery()
      Gets the query for a controller. Multiple retrievals produce a nested OR term.
      Returns:
      the controller query
      Throws:
      UnimplementedException - supportsControllerQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsControllerQuery()} is {@code true} .
    • matchAnyController

      void matchAnyController(boolean match)
      Matches systems with any controller.
      Parameters:
      match - true to match systems with any controller, false to match systems with no controller
      Compliance:
      mandatory - This method must be implemented.
    • clearControllerTerms

      void clearControllerTerms()
      Clears the controller query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchInputId

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

      void clearInputIdTerms()
      Clears the input Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsInputQuery

      boolean supportsInputQuery()
      Tests if an InputQuery is available.
      Returns:
      true if an input query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getInputQuery

      InputQuery getInputQuery()
      Gets the query for an input. Multiple retrievals produce a nested OR term.
      Returns:
      the input query
      Throws:
      UnimplementedException - supportsInputQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsInputQuery()} is {@code true} .
    • matchAnyInput

      void matchAnyInput(boolean match)
      Matches systems with any input.
      Parameters:
      match - true to match systems with any input, false to match systems with no inputs
      Compliance:
      mandatory - This method must be implemented.
    • clearInputTerms

      void clearInputTerms()
      Clears the input query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchSettingId

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

      void clearSettingIdTerms()
      Clears the setting Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsSettingQuery

      boolean supportsSettingQuery()
      Tests if a SettingQuery is available.
      Returns:
      true if a setting query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getSettingQuery

      SettingQuery getSettingQuery()
      Gets the query for a setting. Multiple retrievals produce a nested OR term.
      Returns:
      the setting query
      Throws:
      UnimplementedException - supportsSettingQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsSettingQuery()} is {@code true} .
    • matchAnySetting

      void matchAnySetting(boolean match)
      Matches systems with any setting.
      Parameters:
      match - true to match systems with any setting, false to match systems with no settings
      Compliance:
      mandatory - This method must be implemented.
    • clearSettingTerms

      void clearSettingTerms()
      Clears the setting query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchSceneId

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

      void clearSceneIdTerms()
      Clears the scene Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsSceneQuery

      boolean supportsSceneQuery()
      Tests if a SceneQuery is available.
      Returns:
      true if a scene query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getSceneQuery

      SceneQuery getSceneQuery()
      Gets the query for a scene. Multiple retrievals produce a nested OR term.
      Returns:
      the scene query
      Throws:
      UnimplementedException - supportsSceneQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsSceneQuery()} is {@code true} .
    • matchAnyScene

      void matchAnyScene(boolean match)
      Matches systems with any scene.
      Parameters:
      match - true to match systems with any scene, false to match systems with no scenes
      Compliance:
      mandatory - This method must be implemented.
    • clearSceneTerms

      void clearSceneTerms()
      Clears the scene query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchTriggerId

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

      void clearTriggerIdTerms()
      Clears the trigger Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsTriggerQuery

      boolean supportsTriggerQuery()
      Tests if a TriggerQuery is available.
      Returns:
      true if a trigger query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getTriggerQuery

      TriggerQuery getTriggerQuery()
      Gets the query for a trigger. Multiple retrievals produce a nested OR term.
      Returns:
      the trigger query
      Throws:
      UnimplementedException - supportsTriggerQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsTriggerQuery()} is {@code true} .
    • matchAnyTrigger

      void matchAnyTrigger(boolean match)
      Matches systems with any trigger.
      Parameters:
      match - true to match systems with any trigger, false to match systems with no trigger
      Compliance:
      mandatory - This method must be implemented.
    • clearTriggerTerms

      void clearTriggerTerms()
      Clears the trigger query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchActionGroupId

      void matchActionGroupId(Id actionGroupId, boolean match)
      Sets the action group Id for this query.
      Parameters:
      actionGroupId - the action group Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - actionGroupId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearActionGroupIdTerms

      void clearActionGroupIdTerms()
      Clears the action group Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsActionGroupQuery

      boolean supportsActionGroupQuery()
      Tests if an ActionGroup is available.
      Returns:
      true if an action group query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getActionGroupQuery

      ActionGroupQuery getActionGroupQuery()
      Gets the query for an action group. Multiple retrievals produce a nested OR term.
      Returns:
      the action group query
      Throws:
      UnimplementedException - supportsActionGroupQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsActionGroupQuery()} is {@code true} .
    • matchAnyActionGroup

      void matchAnyActionGroup(boolean match)
      Matches systems with any action group.
      Parameters:
      match - true to match systems with any action group, false to match systems with no action groups
      Compliance:
      mandatory - This method must be implemented.
    • clearActionGroupTerms

      void clearActionGroupTerms()
      Clears the action group query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchAncestorSystemId

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

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

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

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

      void matchAnyAncestorSystem(boolean match)
      Matches systems with any ancestor.
      Parameters:
      match - true to match systems with any ancestor, false to match root systems
      Compliance:
      mandatory - This method must be implemented.
    • clearAncestorSystemTerms

      void clearAncestorSystemTerms()
      Clears the ancestor system query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchDescendantSystemId

      void matchDescendantSystemId(Id systemId, boolean match)
      Sets the system Id for this query to match systems that have the specified system as a descendant.
      Parameters:
      systemId - a system Id
      match - true for a positive match, false for negative match
      Throws:
      NullArgumentException - systemId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearDescendantSystemIdTerms

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

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

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

      void matchAnyDescendantSystem(boolean match)
      Matches systems with any descendant.
      Parameters:
      match - true to match systems with any descendant, false to match leaf systems
      Compliance:
      mandatory - This method must be implemented.
    • clearDescendantSystemTerms

      void clearDescendantSystemTerms()
      Clears the descendant system query terms.
      Compliance:
      mandatory - This method must be implemented.
    • getSystemQueryRecord

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