BUG-9265: Switch empty type mapping from Void to Empty
[yangtools.git] / yang / yang-data-api / src / main / java / org / opendaylight / yangtools / yang / data / api / schema / LeafNode.java
index 9347bdc5baf684b37dd5dd2fe8c274d1b69c6e1c..86bebfee51bc4022c4c0a4e3d2b3bb309efc2de5 100644 (file)
@@ -7,12 +7,26 @@
  */
 package org.opendaylight.yangtools.yang.data.api.schema;
 
-import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier.NodeIdentifier;
-
-public interface LeafNode<T> extends //
-        DataContainerChild<NodeIdentifier, T> {
+import javax.annotation.Nonnull;
+import org.opendaylight.yangtools.yang.data.api.AttributesContainer;
+import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
 
+/**
+ * Leaf node with multiplicity 0..1.
+ *
+ * <p>
+ * Leaf node has a value, but no child nodes in the data tree, schema
+ * for leaf node and its value is described by {@link org.opendaylight.yangtools.yang.model.api.LeafSchemaNode}.
+ *
+ * @param <T> Value type
+ */
+public interface LeafNode<T> extends AttributesContainer, DataContainerChild<NodeIdentifier, T>,
+        ValueNode<NodeIdentifier, T> {
+    /**
+     * Returns value of this leaf node.
+     *
+     * @return Returned value of this leaf node. Value SHOULD meet criteria defined by schema.
+     */
     @Override
-    public NodeIdentifier getIdentifier();
-
+    @Nonnull T getValue();
 }