Sketching out what link-state addition would look like; quite easy until we get to the distributed store.
Added unit tests to provide durable-nondurable transitions.
FIxed issue where link could be accidentally activated.
Renamed parameter.
Change-Id: I8aa19a6583ec50dbf28769995f0a8ea9be9a4daa
diff --git a/core/api/src/main/java/org/onlab/onos/net/Link.java b/core/api/src/main/java/org/onlab/onos/net/Link.java
index cdd0f23..cce34fa 100644
--- a/core/api/src/main/java/org/onlab/onos/net/Link.java
+++ b/core/api/src/main/java/org/onlab/onos/net/Link.java
@@ -55,6 +55,23 @@
}
/**
+ * Representation of the link state, which applies primarily only to
+ * configured durable links, i.e. those that need to remain present,
+ * but instead be marked as inactive.
+ */
+ public enum State {
+ /**
+ * Signifies that a link is currently active.
+ */
+ ACTIVE,
+
+ /**
+ * Signifies that a link is currently active.
+ */
+ INACTIVE
+ }
+
+ /**
* Returns the link source connection point.
*
* @return link source connection point
@@ -75,4 +92,16 @@
*/
Type type();
+ /**
+ * Returns the link state.
+ */
+ State state();
+
+ /**
+ * Indicates if the link is to be considered durable.
+ *
+ * @return link state
+ */
+ boolean isDurable();
+
}