org.apache.geode.cache.query

## Class CqAttributesFactory

- java.lang.Object
- - org.apache.geode.cache.query.CqAttributesFactory

-     public class CqAttributesFactory
      extends java.lang.Object

  The factory class for the CqAttributes instance. This provides the CqListener setter methods. This class maintains state for and creates new instances of the CqAttributes interface for new CqQuery instances. If you create a factory with the default constructor, then the factory is set up to create attributes with all default settings. You can also create a factory by providing a `CqAttributes`, which will set up the new factory with the settings provided in that attributes instance.

  Once a `CqAttributes` is created, it can only be modified after it has been used to create a `CqQuery`.

  Since:
    GemFire 5.5
  See Also:
    `CqAttributes`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `CqAttributesFactory()` Creates a new instance of AttributesFactory ready to create a `CqAttributes` with default settings.
    `CqAttributesFactory(CqAttributes cqAttributes)` Creates a new instance of CqAttributesFactory ready to create a `CqAttributes` with the same settings as those in the specified `CqAttributes`.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addCqListener(CqListener cqListener)` Adds a CQ listener to the end of the list of cq listeners on this factory.
    `CqAttributes` | `create()` Creates a `CqAttributes` with the current settings.
    `void` | `initCqListeners(CqListener[] cqListeners)` Removes all Cq listeners and then adds each listener in the specified array.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### CqAttributesFactory

          public CqAttributesFactory()

      Creates a new instance of AttributesFactory ready to create a `CqAttributes` with default settings.

    - #### CqAttributesFactory

          public CqAttributesFactory(CqAttributes cqAttributes)

      Creates a new instance of CqAttributesFactory ready to create a `CqAttributes` with the same settings as those in the specified `CqAttributes`.
      Parameters:
        `cqAttributes` - the `CqAttributes` used to initialize this AttributesFactory

  - ### Method Detail

    - #### addCqListener

          public void addCqListener(CqListener cqListener)

      Adds a CQ listener to the end of the list of cq listeners on this factory.
      Parameters:
        `cqListener` - the CqListener to add to the factory.
      Throws:
        `java.lang.IllegalArgumentException` - if `cqListener` is null

    - #### initCqListeners

          public void initCqListeners(CqListener[] cqListeners)

      Removes all Cq listeners and then adds each listener in the specified array.
      Parameters:
        `cqListeners` - a possibly null or empty array of listeners to add to this factory.
      Throws:
        `java.lang.IllegalArgumentException` - if the `cqListeners` array has a null element

    - #### create

          public CqAttributes create()

      Creates a `CqAttributes` with the current settings.
      Returns:
        the newly created `CqAttributes`