package org.jboss.errai.cdi.event.server;
import javax.enterprise.context.Dependent;
import javax.enterprise.event.Event;
import javax.enterprise.event.Observes;
import javax.inject.Inject;
import org.jboss.errai.cdi.event.client.shared.Create;
import org.jboss.errai.cdi.event.client.shared.Delete;
import org.jboss.errai.cdi.event.client.shared.NotifierStartEvent;
import org.jboss.errai.cdi.event.client.shared.Server;
import org.jboss.errai.cdi.event.client.shared.TestMarshallingDto;
import org.jboss.errai.cdi.event.client.shared.Update;
@Dependent
public class Notifier {
@Inject
@Server
@Create
private Event<Object> create;
@Inject
@Server
@Update
private Event<Object> update;
@Inject
@Server
@Delete
private Event<Object> deletion;
public void fireCreation(final Object created) {
create.fire(created);
}
public void fireDeletion(final Object deleted) {
deletion.fire(deleted);
}
public void fireUpdate(final Object updated) {
update.fire(updated);
}
public void startCreate(@Observes @Create final NotifierStartEvent evt) {
fireCreation(new TestMarshallingDto());
}
public void startUpdate(@Observes @Update final NotifierStartEvent evt) {
fireUpdate(new TestMarshallingDto());
}
public void startDelete(@Observes @Delete final NotifierStartEvent evt) {
fireDeletion(new TestMarshallingDto());
}
}