| package org.onlab.onos.net.trivial.impl; |
| |
| import org.onlab.onos.event.DefaultEventSinkRegistry; |
| import org.onlab.onos.event.Event; |
| import org.onlab.onos.event.EventDeliveryService; |
| import org.onlab.onos.event.EventSink; |
| |
| import static com.google.common.base.Preconditions.checkState; |
| |
| /** |
| * Implements event delivery system that delivers events synchronously, or |
| * in-line with the post method invocation. |
| */ |
| public class TestEventDispatcher extends DefaultEventSinkRegistry |
| implements EventDeliveryService { |
| |
| @Override |
| public void post(Event event) { |
| EventSink sink = getSink(event.getClass()); |
| checkState(sink != null, "No sink for event %s", event); |
| sink.process(event); |
| } |
| |
| } |