First draft of SelfContained Object for Event
Change-Id: Ib590f60d54343376022f36541127d3a475c4f8e1
diff --git a/src/main/java/net/onrc/onos/ofcontroller/networkgraph/PortEvent.java b/src/main/java/net/onrc/onos/ofcontroller/networkgraph/PortEvent.java
new file mode 100644
index 0000000..f51ee58
--- /dev/null
+++ b/src/main/java/net/onrc/onos/ofcontroller/networkgraph/PortEvent.java
@@ -0,0 +1,55 @@
+package net.onrc.onos.ofcontroller.networkgraph;
+
+/**
+ * Self-contained Port object for event
+ *
+ * TODO: We probably want common base class/interface for Self-Contained Event Object
+ *
+ */
+public class PortEvent {
+ public static class SwitchPort {
+ public final Long dpid;
+ public final Long number;
+
+ public SwitchPort(Long dpid, Long number) {
+ this.dpid = dpid;
+ this.number = number;
+ }
+
+ public Long getDpid() {
+ return dpid;
+ }
+
+ public Long getNumber() {
+ return number;
+ }
+
+ @Override
+ public String toString() {
+ return "(" + Long.toHexString(dpid) + "@" + number + ")";
+ }
+
+ }
+
+ private final SwitchPort id;
+ // TODO Add Hardware Address
+ // TODO Add Description
+
+ public PortEvent(Long dpid, Long number) {
+ this.id = new SwitchPort(dpid, number);
+ }
+
+ public Long getDpid() {
+ return id.dpid;
+ }
+
+ public Long getNumber() {
+ return id.number;
+ }
+
+ @Override
+ public String toString() {
+ return "[PortEvent 0x" + Long.toHexString(id.dpid) + "@" + id.number + "]";
+ }
+
+}