
package de.ivu.elect.business.ergebnis.control;

import javax.ejb.EJB;
import javax.enterprise.event.Observes;
import javax.enterprise.event.Reception;
import javax.enterprise.event.TransactionPhase;

import de.ivu.elect.business.ergebnis.entity.ZwischenergebnisBerechnenEvent;

public class ZwischenergebnisBerechnenEventListener {

  // wichtig, da mit @Inject die asynchrone Ausführung nicht funktioniert
  @EJB
  ZwischenergebnisberechnungBackgroundService service;

  public void listen(
      @Observes(during = TransactionPhase.AFTER_SUCCESS, notifyObserver = Reception.ALWAYS) ZwischenergebnisBerechnenEvent event) {
    ZwischenergebnisberechnungBackgroundService.startIfNotRunning(service, ZwischenergebnisberechnungBackgroundService.RUNNING);
  }
}
