Clean up DataSchemaContainerTree
[yangtools.git] / data / yang-data-util / src / main / java / org / opendaylight / yangtools / yang / data / util / UnkeyedListMixinContextNode.java
index 507d611bd0b65af1f81d022dec4063b397cb142a..00ba8b48109613d9e9c5ba13a9efc98a9c5eb31b 100644 (file)
@@ -7,34 +7,34 @@
  */
 package org.opendaylight.yangtools.yang.data.util;
 
+import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
 import org.opendaylight.yangtools.yang.model.api.ListSchemaNode;
 
-class UnkeyedListMixinContextNode extends AbstractMixinContextNode<NodeIdentifier> {
-
+final class UnkeyedListMixinContextNode extends AbstractMixinContextNode<NodeIdentifier> {
     private final UnkeyedListItemContextNode innerNode;
 
     UnkeyedListMixinContextNode(final ListSchemaNode list) {
         super(NodeIdentifier.create(list.getQName()), list);
-        this.innerNode = new UnkeyedListItemContextNode(list);
+        innerNode = new UnkeyedListItemContextNode(list);
     }
 
     @Override
     public DataSchemaContextNode<?> getChild(final PathArgument child) {
-        if (child.getNodeType().equals(getIdentifier().getNodeType())) {
-            return innerNode;
-        }
-        return null;
+        // FIXME: 10.0.0: checkArgument() on PathArgument
+        return innerNodeIfMatch(child.getNodeType());
     }
 
     @Override
     public DataSchemaContextNode<?> getChild(final QName child) {
-        if (getIdentifier().getNodeType().equals(child)) {
-            return innerNode;
-        }
-        return null;
+        return innerNodeIfMatch(child);
     }
 
+    // FIXME: dead ringers in other AbstractMixinContextNode subclasses
+    private @Nullable DataSchemaContextNode<?> innerNodeIfMatch(final QName qname) {
+        // FIXME: 10.0.0: requireNonNull(qname)
+        return getIdentifier().getNodeType().equals(qname) ? innerNode : null;
+    }
 }