Package org.silverpeas.components.questionreply.service.notification

## Class SubscriptionNotifier

- java.lang.Object
- - org.silverpeas.core.notification.user.builder.AbstractUserNotificationBuilder
  - - org.silverpeas.core.notification.user.builder.AbstractResourceUserNotificationBuilder<T>
    - - org.silverpeas.core.notification.user.builder.AbstractTemplateUserNotificationBuilder<Question>
      - - org.silverpeas.components.questionreply.service.notification.SubscriptionNotifier

- All Implemented Interfaces:
    `org.silverpeas.core.notification.user.builder.UserNotificationBuilder`, `org.silverpeas.core.notification.user.RemoveSenderRecipientBehavior`, `org.silverpeas.core.notification.user.UserSubscriptionNotificationBehavior`

      public class SubscriptionNotifier
      extends org.silverpeas.core.notification.user.builder.AbstractTemplateUserNotificationBuilder<Question>
      implements org.silverpeas.core.notification.user.UserSubscriptionNotificationBehavior

  Author:
    ehugonnet

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.silverpeas.core.notification.user.builder.AbstractTemplateUserNotificationBuilder

      `org.silverpeas.core.notification.user.builder.AbstractTemplateUserNotificationBuilder.NotificationTemporal`

  - ### Field Summary

    - ### Fields inherited from class org.silverpeas.core.notification.user.builder.AbstractTemplateUserNotificationBuilder

      `CUSTOM_NOTIFICATION_SUBJECT, DEFAULT_NOTIFICATION_SUBJECT`

    - ### Fields inherited from interface org.silverpeas.core.notification.user.UserSubscriptionNotificationBehavior

      `SUBSCRIPTION_NOTIFICATION_SENDING_CONFIRMATION_HTTP_PARAM`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `SubscriptionNotifier​(org.silverpeas.core.admin.user.model.User sender, Question question, Reply reply)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected org.silverpeas.core.notification.user.client.constant.NotifAction` | `getAction()` |
    `protected String` | `getBundleSubjectKey()` |
    `protected String` | `getComponentInstanceId()` |
    `protected String` | `getContributionAccessLinkLabelBundleKey()` |
    `protected Collection<String>` | `getGroupIdsToNotify()` |
    `protected String` | `getLocalizationBundlePath()` |
    `protected String` | `getResourceURL​(Question question)` |
    `protected String` | `getSender()` |
    `protected String` | `getTemplateFileName()` |
    `protected String` | `getTemplatePath()` |
    `protected String` | `getTitle​(String language)` |
    `protected Collection<String>` | `getUserIdsToNotify()` |
    `protected boolean` | `isSendImmediately()` |
    `protected void` | `performNotificationResource​(String language, Question resource, org.silverpeas.core.notification.user.model.NotificationResourceData notificationResourceData)` |
    `protected void` | `performTemplateData​(String language, Question question, org.silverpeas.core.template.SilverpeasTemplate template)` |

    - ### Methods inherited from class org.silverpeas.core.notification.user.builder.AbstractTemplateUserNotificationBuilder

      `createNotification, getTitle, perform, performBuild, performNotificationResource, performNotificationResource`

    - ### Methods inherited from class org.silverpeas.core.notification.user.builder.AbstractResourceUserNotificationBuilder

      `getResource, initialize, initializeNotificationResourceData, isGroupCanBeNotified, isUserCanBeNotified, performBuild, setResource`

    - ### Methods inherited from class org.silverpeas.core.notification.user.builder.AbstractUserNotificationBuilder

      `build, getBundle, getBundle, getContent, getExternalAddressesToNotify, getMessageType, getNotificationMetaData, getUserIdsToExcludeFromNotifying, stop, stopWhenNoUserToNotify`

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

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

- - ### Constructor Detail

    - #### SubscriptionNotifier

          public SubscriptionNotifier​(org.silverpeas.core.admin.user.model.User sender,
                                      Question question,
                                      Reply reply)

  - ### Method Detail

    - #### getTemplateFileName

          protected String getTemplateFileName()

      Specified by:
        `getTemplateFileName` in class `org.silverpeas.core.notification.user.builder.AbstractTemplateUserNotificationBuilder<Question>`

    - #### getBundleSubjectKey

          protected String getBundleSubjectKey()

    - #### getTitle

          protected String getTitle​(String language)

    - #### getUserIdsToNotify

          protected Collection<String> getUserIdsToNotify()

      Specified by:
        `getUserIdsToNotify` in class `org.silverpeas.core.notification.user.builder.AbstractUserNotificationBuilder`

    - #### getGroupIdsToNotify

          protected Collection<String> getGroupIdsToNotify()

      Overrides:
        `getGroupIdsToNotify` in class `org.silverpeas.core.notification.user.builder.AbstractUserNotificationBuilder`

    - #### performTemplateData

          protected void performTemplateData​(String language,
                                             Question question,
                                             org.silverpeas.core.template.SilverpeasTemplate template)

    - #### getResourceURL

          protected String getResourceURL​(Question question)

      Overrides:
        `getResourceURL` in class `org.silverpeas.core.notification.user.builder.AbstractResourceUserNotificationBuilder<Question>`

    - #### getLocalizationBundlePath

          protected String getLocalizationBundlePath()

      Overrides:
        `getLocalizationBundlePath` in class `org.silverpeas.core.notification.user.builder.AbstractUserNotificationBuilder`

    - #### getContributionAccessLinkLabelBundleKey

          protected String getContributionAccessLinkLabelBundleKey()

      Overrides:
        `getContributionAccessLinkLabelBundleKey` in class `org.silverpeas.core.notification.user.builder.AbstractTemplateUserNotificationBuilder<Question>`

    - #### getTemplatePath

          protected String getTemplatePath()

      Specified by:
        `getTemplatePath` in class `org.silverpeas.core.notification.user.builder.AbstractTemplateUserNotificationBuilder<Question>`

    - #### getAction

          protected org.silverpeas.core.notification.user.client.constant.NotifAction getAction()

      Specified by:
        `getAction` in class `org.silverpeas.core.notification.user.builder.AbstractUserNotificationBuilder`

    - #### getSender

          protected String getSender()

      Specified by:
        `getSender` in class `org.silverpeas.core.notification.user.builder.AbstractUserNotificationBuilder`

    - #### isSendImmediately

          protected boolean isSendImmediately()

      Overrides:
        `isSendImmediately` in class `org.silverpeas.core.notification.user.builder.AbstractResourceUserNotificationBuilder<Question>`

    - #### getComponentInstanceId

          protected String getComponentInstanceId()

      Specified by:
        `getComponentInstanceId` in class `org.silverpeas.core.notification.user.builder.AbstractUserNotificationBuilder`

    - #### performNotificationResource

          protected void performNotificationResource​(String language,
                                                     Question resource,
                                                     org.silverpeas.core.notification.user.model.NotificationResourceData notificationResourceData)

      Specified by:
        `performNotificationResource` in class `org.silverpeas.core.notification.user.builder.AbstractTemplateUserNotificationBuilder<Question>`