Introduce DelegatingModificationApplyOperation
[yangtools.git] / yang / yang-data-impl / src / main / java / org / opendaylight / yangtools / yang / data / impl / schema / tree / MinMaxElementsValidation.java
index db32cf16274482d400d3f985a2c7da28d27f7bc4..14ee7b489578e06af9930f22e2c0b98c0f2f363a 100644 (file)
@@ -25,7 +25,7 @@ import org.opendaylight.yangtools.yang.model.api.ElementCountConstraintAware;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-final class MinMaxElementsValidation extends ModificationApplyOperation {
+final class MinMaxElementsValidation extends DelegatingModificationApplyOperation {
     private static final Logger LOG = LoggerFactory.getLogger(MinMaxElementsValidation.class);
 
     private final SchemaAwareApplyOperation delegate;
@@ -53,6 +53,11 @@ final class MinMaxElementsValidation extends ModificationApplyOperation {
         return new MinMaxElementsValidation(delegate, constraint.getMinElements(), constraint.getMaxElements());
     }
 
+    @Override
+    ModificationApplyOperation delegate() {
+        return delegate;
+    }
+
     @Override
     Optional<TreeNode> apply(final ModifiedNode modification, final Optional<TreeNode> storeMeta,
             final Version version) {
@@ -104,26 +109,6 @@ final class MinMaxElementsValidation extends ModificationApplyOperation {
         }
     }
 
-    @Override
-    ChildTrackingPolicy getChildPolicy() {
-        return delegate.getChildPolicy();
-    }
-
-    @Override
-    void mergeIntoModifiedNode(final ModifiedNode node, final NormalizedNode<?, ?> value, final Version version) {
-        delegate.mergeIntoModifiedNode(node, value, version);
-    }
-
-    @Override
-    public Optional<ModificationApplyOperation> getChild(final PathArgument child) {
-        return delegate.getChild(child);
-    }
-
-    @Override
-    void recursivelyVerifyStructure(final NormalizedNode<?, ?> value) {
-        delegate.recursivelyVerifyStructure(value);
-    }
-
     private void validateMinMaxElements(final ModificationPath path, final NormalizedNode<?, ?> value)
             throws DataValidationFailedException {
         final PathArgument id = value.getIdentifier();