Do not use Optional in returns
[yangtools.git] / data / yang-data-tree-ri / src / main / java / org / opendaylight / yangtools / yang / data / tree / impl / OperationWithModification.java
index 64b2a891d806cfa77d59eea9f7fa8007a5b049be..29227d4106378b339f1e3aae3c701a6e09b94e07 100644 (file)
@@ -59,18 +59,19 @@ final class OperationWithModification {
     Optional<NormalizedNode> read(final PathArgument child, final Version version) {
         final ModifiedNode childNode = modification.childByArg(child);
         if (childNode != null) {
-            Optional<? extends TreeNode> snapshot = childNode.getSnapshot();
+            var snapshot = childNode.getSnapshot();
             if (snapshot == null) {
                 // Snapshot is not present, force instantiation
-                snapshot = applyOperation.getChildByArg(child).apply(childNode, childNode.original(), version);
+                snapshot = Optional.ofNullable(
+                    applyOperation.getChildByArg(child).apply(childNode, childNode.original(), version));
             }
 
             return snapshot.map(TreeNode::getData);
         }
 
-        Optional<? extends TreeNode> snapshot = modification.getSnapshot();
+        var snapshot = modification.getSnapshot();
         if (snapshot == null) {
-            snapshot = apply(modification.original(), version);
+            snapshot = Optional.ofNullable(apply(modification.original(), version));
         }
 
         if (snapshot.isPresent()) {
@@ -88,7 +89,7 @@ final class OperationWithModification {
         return applyOperation;
     }
 
-    public Optional<? extends TreeNode> apply(final @Nullable TreeNode data, final Version version) {
+    public @Nullable TreeNode apply(final @Nullable TreeNode data, final Version version) {
         return applyOperation.apply(modification, data, version);
     }