Module java.management
Package javax.management

## Interface QueryExp

- All Superinterfaces:
    `Serializable`
  All Known Implementing Classes:
    `ObjectName`

      public interface QueryExp
      extends Serializable

  Represents relational constraints similar to database query "where clauses". Instances of QueryExp are returned by the static methods of the `Query` class.

  It is possible, but not recommended, to create custom queries by implementing this interface. In that case, it is better to extend the `QueryEval` class than to implement the interface directly, so that the `setMBeanServer(javax.management.MBeanServer)` method works correctly.

  Since:
    1.5
  See Also:
    `MBeanServer.queryNames`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `apply​(ObjectName name)` | Applies the QueryExp on an MBean.
    `void` | `setMBeanServer​(MBeanServer s)` | Sets the MBean server on which the query is to be performed.

- - ### Method Detail

    - #### apply

          boolean apply​(ObjectName name)
                 throws BadStringOperationException,
                        BadBinaryOpValueExpException,
                        BadAttributeValueExpException,
                        InvalidApplicationException

      Applies the QueryExp on an MBean.
      Parameters:
        `name` - The name of the MBean on which the QueryExp will be applied.
      Returns:
        True if the query was successfully applied to the MBean, false otherwise
      Throws:
        `BadStringOperationException` - when an invalid string operation is passed to a method for constructing a query
        `BadBinaryOpValueExpException` - when an invalid expression is passed to a method for constructing a query
        `BadAttributeValueExpException` - when an invalid MBean attribute is passed to a query constructing method
        `InvalidApplicationException` - when an invalid apply is attempted

    - #### setMBeanServer

          void setMBeanServer​(MBeanServer s)

      Sets the MBean server on which the query is to be performed.
      Parameters:
        `s` - The MBean server on which the query is to be performed.