package org.jboss.resteasy.test.cdi.basic.resource; import org.jboss.resteasy.annotations.interception.ServerInterceptor; import javax.enterprise.event.Event; import javax.inject.Inject; import javax.ws.rs.WebApplicationException; import javax.ws.rs.ext.Provider; import javax.ws.rs.ext.WriterInterceptor; import javax.ws.rs.ext.WriterInterceptorContext; import java.io.IOException; import java.util.logging.Logger; @Provider @ServerInterceptor public class EventsBookWriterInterceptor implements WriterInterceptor { @Inject @EventsWriteIntercept Event<String> writeInterceptEvent; @Inject private Logger log; @Override public void aroundWriteTo(WriterInterceptorContext context) throws IOException, WebApplicationException { log.info("*** Intercepting call in EventsBookWriterInterceptor.write()"); log.info("EventsBookWriterInterceptor firing writeInterceptEvent"); writeInterceptEvent.fire("writeInterceptEvent"); context.proceed(); log.info("*** Back from intercepting call in EventsBookWriterInterceptor.write()"); } }