Package tigase.xmpp.mam.modules

## Class QueryModule

- java.lang.Object
- - tigase.xmpp.mam.modules.QueryModule

- All Implemented Interfaces:
    `Module`

      @Bean(name="mamQueryModule",
            active=true)
      public class QueryModule
      extends java.lang.Object
      implements Module

  Implementation of module processing requests to retrieve items using XEP-0313: Message Archive Management
  Created by andrzej on 19.07.2016.

- - ### Field Summary

    - ### Fields inherited from interface tigase.component.modules.Module

      `EMPTY_FEATURES`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `QueryModule()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `canHandle​(Packet packet)` | Returns true if Packet can be procesed by module.
    `java.lang.String[]` | `getFeatures()` | Returns XMPP features offered by module.
    `Criteria` | `getModuleCriteria()` | Returns critera used by Component to select module to handle incoming stanza.
    `protected boolean` | `isXMLNSSupported​(java.lang.String xmlns)` |
    `void` | `process​(Packet packet)` | Process incoming stanza.

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

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

- - ### Constructor Detail

    - #### QueryModule

          public QueryModule()

  - ### Method Detail

    - #### getFeatures

          public java.lang.String[] getFeatures()

      Description copied from interface: `Module`
      Returns XMPP features offered by module. Features will be returned by Service Discovery.
      Specified by:
        `getFeatures` in interface `Module`
      Returns:
        array of features or `null`.

    - #### getModuleCriteria

          public Criteria getModuleCriteria()

      Description copied from interface: `Module`
      Returns critera used by Component to select module to handle incoming stanza.
      Specified by:
        `getModuleCriteria` in interface `Module`
      Returns:
        criteria of selecting module.

    - #### canHandle

          public boolean canHandle​(Packet packet)

      Description copied from interface: `Module`
      Returns true if Packet can be procesed by module. Default implementation uses Criteria.
      Specified by:
        `canHandle` in interface `Module`

    - #### isXMLNSSupported

          protected boolean isXMLNSSupported​(java.lang.String xmlns)

    - #### process

          public void process​(Packet packet)
                       throws ComponentException,
                              TigaseStringprepException

      Description copied from interface: `Module`
      Process incoming stanza.
      Specified by:
        `process` in interface `Module`
      Parameters:
        `packet` - received `stanza`.
      Throws:
        `ComponentException` - if stanza can't be processed correctly. ComponentException is converted to error stanza and returned to stanza sender.
        `TigaseStringprepException` - if there was an error during stringprep processing.