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();
+
 }