package net.ftlines.blog.cdidemo.cdi;
import javax.enterprise.event.Event;
import javax.enterprise.inject.spi.BeanManager;
import javax.inject.Inject;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import net.ftlines.wicket.cdi.NonContextual;
import org.jboss.weld.environment.servlet.Listener;
/**
* NB: this file is derived from the open-source project hosted at https://github.com/42Lines/blog-cdidemo
*/
public class ApplicationLifecycleNotifier implements ServletContextListener {
@Inject
Event<ApplicationStartedEvent> started;
public void contextInitialized(ServletContextEvent sce) {
BeanManager manager = (BeanManager) sce.getServletContext().getAttribute(Listener.BEAN_MANAGER_ATTRIBUTE_NAME);
NonContextual.of(getClass(), manager).inject(this);
started.fire(new ApplicationStartedEvent());
}
public void contextDestroyed(ServletContextEvent sce) {
}
}