Class AgendaApplicationBadgePlugin

java.lang.Object
org.exoplatform.agenda.plugin.AgendaApplicationBadgePlugin
All Implemented Interfaces:
io.meeds.appcenter.plugin.ApplicationBadgePlugin

@Component @ConditionalOnClass(io.meeds.appcenter.plugin.ApplicationBadgePlugin.class) public class AgendaApplicationBadgePlugin extends Object implements io.meeds.appcenter.plugin.ApplicationBadgePlugin
Reports how many invitations the user still has to answer, on the Agenda application tile.

Carries no counting logic of its own: it sums AgendaEventService.countPendingEvents(java.util.List, long) and AgendaEventService.countEventDatePolls(java.util.List, long), exactly as AgendaPendingInvitationBadge.vue does for the reminder already shown inside the Agenda application — so the badge and that reminder can never disagree. Counting only pending events would silently drop date polls, which the functional specification requires ("event or datepoll").

  • Field Details

  • Constructor Details

    • AgendaApplicationBadgePlugin

      public AgendaApplicationBadgePlugin()
  • Method Details

    • init

      @PostConstruct public void init()
    • getName

      public String getName()
      Specified by:
      getName in interface io.meeds.appcenter.plugin.ApplicationBadgePlugin
    • getPortletNames

      public List<String> getPortletNames()
      Specified by:
      getPortletNames in interface io.meeds.appcenter.plugin.ApplicationBadgePlugin
    • countBadge

      public long countBadge(String username)
      Specified by:
      countBadge in interface io.meeds.appcenter.plugin.ApplicationBadgePlugin
    • isEnabled

      public boolean isEnabled(String username)
      Specified by:
      isEnabled in interface io.meeds.appcenter.plugin.ApplicationBadgePlugin