Added unit tests for the event abstractions.
Added Element as the notion of common ancestry between Device and Host.
diff --git a/net/api/src/main/java/org/onlab/onos/event/AbstractListenerManager.java b/net/api/src/main/java/org/onlab/onos/event/AbstractListenerManager.java
index 7d4836f..d063b59 100644
--- a/net/api/src/main/java/org/onlab/onos/event/AbstractListenerManager.java
+++ b/net/api/src/main/java/org/onlab/onos/event/AbstractListenerManager.java
@@ -51,8 +51,13 @@
}
}
- @Override
- public void reportProblem(E event, Throwable error) {
+ /**
+ * Reports a problem encountered while processing an event.
+ *
+ * @param event event being processed
+ * @param error error encountered while processing
+ */
+ protected void reportProblem(E event, Throwable error) {
log.warn("Exception encountered while processing event " + event, error);
}
diff --git a/net/api/src/main/java/org/onlab/onos/event/AbstractEventSinkBroker.java b/net/api/src/main/java/org/onlab/onos/event/DefaultEventSinkBroker.java
similarity index 91%
rename from net/api/src/main/java/org/onlab/onos/event/AbstractEventSinkBroker.java
rename to net/api/src/main/java/org/onlab/onos/event/DefaultEventSinkBroker.java
index 4ca3c3c..c791544 100644
--- a/net/api/src/main/java/org/onlab/onos/event/AbstractEventSinkBroker.java
+++ b/net/api/src/main/java/org/onlab/onos/event/DefaultEventSinkBroker.java
@@ -12,7 +12,7 @@
/**
* Base implementation of event sink broker.
*/
-public class AbstractEventSinkBroker implements EventSinkBroker {
+public class DefaultEventSinkBroker implements EventSinkBroker {
private final Map<Class<? extends Event>, EventSink<? extends Event>> sinks =
new ConcurrentHashMap<>();
@@ -36,6 +36,7 @@
@Override
@SuppressWarnings("unchecked")
public <E extends Event> EventSink<E> getSink(Class<E> eventClass) {
+ // TODO: add implicit registration of descendant classes
return (EventSink<E>) sinks.get(eventClass);
}
diff --git a/net/api/src/main/java/org/onlab/onos/event/EventSink.java b/net/api/src/main/java/org/onlab/onos/event/EventSink.java
index f46458c..45ad408 100644
--- a/net/api/src/main/java/org/onlab/onos/event/EventSink.java
+++ b/net/api/src/main/java/org/onlab/onos/event/EventSink.java
@@ -12,12 +12,4 @@
*/
void process(E event);
- /**
- * Reports a problem encountered while processing an event.
- *
- * @param event event being processed
- * @param error error encountered while processing
- */
- void reportProblem(E event, Throwable error);
-
}