Class CalendarSharedNotificationPlugin

java.lang.Object
org.exoplatform.container.component.BaseComponentPlugin
org.exoplatform.commons.api.notification.plugin.BaseNotificationPlugin
org.exoplatform.agenda.notification.plugin.CalendarSharedNotificationPlugin
All Implemented Interfaces:
org.exoplatform.container.component.ComponentPlugin

public class CalendarSharedNotificationPlugin extends org.exoplatform.commons.api.notification.plugin.BaseNotificationPlugin
Tells a colleague that a calendar was shared with them (EXO-90357), through the platform's notification framework: on site, by mail and as a push, following the colleague's own notification settings like every other agenda notification.

One recipient, the sharee; the sender is the owner. The stored parameters name the calendar and its owner and carry the link to the agenda, where the calendar now sits under "Shared with me"; the templates read nothing else.

  • Field Summary

    Fields inherited from class org.exoplatform.container.component.BaseComponentPlugin

    desc, name
  • Constructor Summary

    Constructors
    Constructor
    Description
    CalendarSharedNotificationPlugin(org.exoplatform.container.xml.InitParams initParams, org.exoplatform.social.core.manager.IdentityManager identityManager, org.exoplatform.agenda.service.AgendaCalendarService calendarService)
    Builds the plugin.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    isValid(org.exoplatform.commons.api.notification.NotificationContext ctx)
    org.exoplatform.commons.api.notification.model.NotificationInfo
    makeNotification(org.exoplatform.commons.api.notification.NotificationContext ctx)

    Methods inherited from class org.exoplatform.commons.api.notification.plugin.BaseNotificationPlugin

    buildNotification, end, getKey, getOrganizationService, getPluginConfigs, isOldPlugin, setOldPlugin, start

    Methods inherited from class org.exoplatform.container.component.BaseComponentPlugin

    getDescription, getName, setDescription, setName

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • CalendarSharedNotificationPlugin

      public CalendarSharedNotificationPlugin(org.exoplatform.container.xml.InitParams initParams, org.exoplatform.social.core.manager.IdentityManager identityManager, org.exoplatform.agenda.service.AgendaCalendarService calendarService)
      Builds the plugin.
      Parameters:
      initParams - the Kernel parameters, carrying the plugin key
      identityManager - resolves the owner and the sharee
      calendarService - names the shared calendar
  • Method Details

    • getId

      public String getId()
      Specified by:
      getId in class org.exoplatform.commons.api.notification.plugin.BaseNotificationPlugin
    • isValid

      public boolean isValid(org.exoplatform.commons.api.notification.NotificationContext ctx)
      Specified by:
      isValid in class org.exoplatform.commons.api.notification.plugin.BaseNotificationPlugin
    • makeNotification

      public org.exoplatform.commons.api.notification.model.NotificationInfo makeNotification(org.exoplatform.commons.api.notification.NotificationContext ctx)
      Specified by:
      makeNotification in class org.exoplatform.commons.api.notification.plugin.BaseNotificationPlugin