Initial opendaylight infrastructure commit!!
[controller.git] / opendaylight / sal / yang-prototype / yang / yang-data-api / src / main / java / org / opendaylight / controller / yang / data / api / Node.java
diff --git a/opendaylight/sal/yang-prototype/yang/yang-data-api/src/main/java/org/opendaylight/controller/yang/data/api/Node.java b/opendaylight/sal/yang-prototype/yang/yang-data-api/src/main/java/org/opendaylight/controller/yang/data/api/Node.java
new file mode 100644 (file)
index 0000000..341a286
--- /dev/null
@@ -0,0 +1,42 @@
+/*\r
+ * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
+ *\r
+ * This program and the accompanying materials are made available under the\r
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
+ * and is available at http://www.eclipse.org/legal/epl-v10.html\r
+ */\r
+package org.opendaylight.controller.yang.data.api;\r
+\r
+import org.opendaylight.controller.yang.common.QName;\r
+\r
+/**\r
+ * Base representation of node in the data tree, defines basic parameters of\r
+ * node such as a QName.\r
+ * \r
+ * \r
+ * @param <T>\r
+ */\r
+public interface Node<T> {\r
+\r
+    /**\r
+     * Returns the name of the Node\r
+     * \r
+     * @return\r
+     */\r
+    QName getNodeType();\r
+\r
+    /**\r
+     * Returns parent node\r
+     * \r
+     * @return parent node\r
+     */\r
+    CompositeNode getParent();\r
+\r
+    /**\r
+     * Returns the value that holds current node, if no value is defined method\r
+     * can return <code>null</code>\r
+     * \r
+     * @return Returns the value that holds current node.\r
+     */\r
+    T getValue();\r
+}\r