Add new kubernetes node state, add a set of state related REST APIs

Change-Id: I2ac3d9ff26030433e61148e0bf8963016f751f8a
diff --git a/apps/k8s-node/api/src/main/java/org/onosproject/k8snode/api/K8sNodeHandler.java b/apps/k8s-node/api/src/main/java/org/onosproject/k8snode/api/K8sNodeHandler.java
index 71c3914..0ef7302 100644
--- a/apps/k8s-node/api/src/main/java/org/onosproject/k8snode/api/K8sNodeHandler.java
+++ b/apps/k8s-node/api/src/main/java/org/onosproject/k8snode/api/K8sNodeHandler.java
@@ -66,4 +66,13 @@
      * @param k8sNode kubernetes node
      */
     void processOnBoardedState(K8sNode k8sNode);
+
+    /**
+     * Processes the give node for post-on-board state.
+     * As long as external interface is configured,
+     * it will mark the node state as post-on-board.
+     *
+     * @param k8sNode kubernetes node
+     */
+    void processPostOnBoardState(K8sNode k8sNode);
 }
diff --git a/apps/k8s-node/api/src/main/java/org/onosproject/k8snode/api/K8sNodeState.java b/apps/k8s-node/api/src/main/java/org/onosproject/k8snode/api/K8sNodeState.java
index 2cdbe94..3311ac6 100644
--- a/apps/k8s-node/api/src/main/java/org/onosproject/k8snode/api/K8sNodeState.java
+++ b/apps/k8s-node/api/src/main/java/org/onosproject/k8snode/api/K8sNodeState.java
@@ -49,6 +49,20 @@
         }
     },
     /**
+     * Indicates the node is post-on-board.
+     */
+    POST_ON_BOARD {
+        @Override
+        public void process(K8sNodeHandler handler, K8sNode node) {
+            handler.processPostOnBoardState(node);
+        }
+
+        @Override
+        public K8sNodeState nextState() {
+            return POST_ON_BOARD;
+        }
+    },
+    /**
      * Indicates the node is newly added.
      */
     INIT {