Document StoreTreeNode.getChild() nullness 79/80579/3
authorRobert Varga <robert.varga@pantheon.tech>
Mon, 25 Feb 2019 13:34:14 +0000 (14:34 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Mon, 25 Feb 2019 14:08:23 +0000 (15:08 +0100)
Null is not a valid argument, document a NPE being thrown when
a null is encountered.

Change-Id: I5d51ec5800a0f34a3a04123508d72f1acbe22db7
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/StoreTreeNode.java

index c8778f4377dcba183b0ddfe74c3e3c4d3ace72c8..f2450ed260dd5cc8e9457b2e122ffd0ad8eb3216 100644 (file)
@@ -8,22 +8,23 @@
 package org.opendaylight.yangtools.yang.data.api.schema.tree;
 
 import java.util.Optional;
+import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
 
 /**
- * A tree node which has references to its child leaves. This are typically internal non-data leaves, such as
+ * A tree node which has references to its child leaves. These are typically internal non-data leaves, such as
  * containers, lists, etc.
  *
  * @param <C> Final node type
  */
-// FIXME: 3.0.0: Use @NonNullByDefault
 public interface StoreTreeNode<C extends StoreTreeNode<C>> {
     /**
      * Returns a direct child of the node.
      *
      * @param child Identifier of child
      * @return Optional with node if the child is existing, {@link Optional#empty()} otherwise.
+     * @throws NullPointerException when {@code child} is null
      */
-    // FIXME: 3.0.0: document NullPointerException being thrown
-    Optional<C> getChild(PathArgument child);
+    // FIXME: 4.0.0: Optional<? extends C>
+    @NonNull Optional<C> getChild(PathArgument child);
 }