Package tigase.xmpp.impl.push

## Class AwayPushNotificationsExtension

- java.lang.Object
- - tigase.xmpp.impl.push.AwayPushNotificationsExtension

- All Implemented Interfaces:
    `Initializable`, `UnregisterAware`, `PushNotificationsAware`, `PushNotificationsExtension`

      @Bean(name="away",
            parent=PushNotifications.class,
            active=false)
      public class AwayPushNotificationsExtension
      extends java.lang.Object
      implements PushNotificationsExtension, Initializable, UnregisterAware

- - ### Constructor Summary

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

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `beforeUnregister()` | Method called before bean unregister.
    `Element[]` | `getDiscoFeatures()` |
    `protected java.util.Collection<Element>` | `getPushServicesForAwayNotifications​(XMPPResourceConnection session)` |
    `void` | `initialize()` | Method will be called, when bean will be created, configured and ready to use.
    `void` | `presenceChanged​(UserPresenceChangedEvent event)` |
    `void` | `processEnableElement​(Element enableEl, Element settingsEl)` |
    `void` | `setPushNotifications​(PushNotifications pushNotifications)` |
    `boolean` | `shouldSendNotification​(Packet packet, BareJID userJid, XMPPResourceConnection session)` |

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

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

    - ### Methods inherited from interface tigase.xmpp.impl.push.PushNotificationsExtension

      `prepareNotificationPayload`

- - ### Constructor Detail

    - #### AwayPushNotificationsExtension

          public AwayPushNotificationsExtension()

  - ### Method Detail

    - #### getDiscoFeatures

          public Element[] getDiscoFeatures()

      Specified by:
        `getDiscoFeatures` in interface `PushNotificationsAware`

    - #### initialize

          public void initialize()

      Description copied from interface: `Initializable`
      Method will be called, when bean will be created, configured and ready to use.
      Specified by:
        `initialize` in interface `Initializable`

    - #### beforeUnregister

          public void beforeUnregister()

      Description copied from interface: `UnregisterAware`
      Method called before bean unregister.
      Specified by:
        `beforeUnregister` in interface `UnregisterAware`

    - #### presenceChanged

          @HandleEvent(filter=local)
          public void presenceChanged​(UserPresenceChangedEvent event)

    - #### processEnableElement

          public void processEnableElement​(Element enableEl,
                                           Element settingsEl)

      Specified by:
        `processEnableElement` in interface `PushNotificationsAware`

    - #### setPushNotifications

          public void setPushNotifications​(PushNotifications pushNotifications)

      Specified by:
        `setPushNotifications` in interface `PushNotificationsExtension`

    - #### shouldSendNotification

          public boolean shouldSendNotification​(Packet packet,
                                                BareJID userJid,
                                                XMPPResourceConnection session)
                                         throws XMPPException

      Specified by:
        `shouldSendNotification` in interface `PushNotificationsExtension`
      Throws:
        `XMPPException`

    - #### getPushServicesForAwayNotifications

          protected java.util.Collection<Element> getPushServicesForAwayNotifications​(XMPPResourceConnection session)