Clean up DataTreeCandidateNode contract
[yangtools.git] / yang / yang-data-impl / src / main / java / org / opendaylight / yangtools / yang / data / impl / schema / tree / NoopDataTreeCandidate.java
index 3ca205c67ec25bd535109a14c87d15d8adcb55d6..f445721946a775d241278d268745d16ae8b0c7ba 100644 (file)
@@ -10,10 +10,10 @@ package org.opendaylight.yangtools.yang.data.impl.schema.tree;
 import static com.google.common.base.Preconditions.checkArgument;
 import static java.util.Objects.requireNonNull;
 
+import com.google.common.collect.ImmutableList;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.Optional;
-import javax.annotation.Nonnull;
+import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
@@ -29,41 +29,37 @@ import org.opendaylight.yangtools.yang.data.api.schema.tree.spi.TreeNode;
 final class NoopDataTreeCandidate extends AbstractDataTreeCandidate {
     private static final DataTreeCandidateNode ROOT = new DataTreeCandidateNode() {
         @Override
-        @Nonnull
         public ModificationType getModificationType() {
             return ModificationType.UNMODIFIED;
         }
 
-        @Nonnull
         @Override
         public Collection<DataTreeCandidateNode> getChildNodes() {
-            return Collections.emptyList();
+            return ImmutableList.of();
         }
 
         @Override
-        @Nonnull
         public PathArgument getIdentifier() {
             throw new IllegalStateException("Attempted to read identifier of the no-operation change");
         }
 
         @Override
-        @Nonnull
         public Optional<NormalizedNode<?, ?>> getDataAfter() {
             return Optional.empty();
         }
 
         @Override
-        @Nonnull
         public Optional<NormalizedNode<?, ?>> getDataBefore() {
             return Optional.empty();
         }
 
         @Override
-        public DataTreeCandidateNode getModifiedChild(final PathArgument identifier) {
-            return null;
+        public Optional<DataTreeCandidateNode> getModifiedChild(final PathArgument identifier) {
+            return Optional.empty();
         }
     };
-    private final TreeNode afterRoot;
+
+    private final @NonNull TreeNode afterRoot;
 
     protected NoopDataTreeCandidate(final YangInstanceIdentifier rootPath, final ModifiedNode modificationRoot,
             final TreeNode afterRoot) {
@@ -78,7 +74,6 @@ final class NoopDataTreeCandidate extends AbstractDataTreeCandidate {
     }
 
     @Override
-    @Nonnull
     protected TreeNode getTipRoot() {
         return afterRoot;
     }