Teach SchemaAwareApplyOperation about anydata/anyxml
[yangtools.git] / yang / yang-data-impl / src / main / java / org / opendaylight / yangtools / yang / data / impl / schema / tree / ValueNodeModificationStrategy.java
index a204d6eb464ac764dbb9eaa2714e8bebc5b06e80..2f6bd9c9bacda4d6ce83778e5e5ebf5099588904 100644 (file)
@@ -14,7 +14,6 @@ import java.util.Optional;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
-import org.opendaylight.yangtools.yang.data.api.schema.ValueNode;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.IncorrectDataStructureException;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.spi.TreeNode;
@@ -22,11 +21,12 @@ import org.opendaylight.yangtools.yang.data.api.schema.tree.spi.TreeNodeFactory;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.spi.Version;
 import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
 
-final class ValueNodeModificationStrategy<T extends DataSchemaNode> extends SchemaAwareApplyOperation<T> {
-    private final Class<? extends ValueNode> nodeClass;
+final class ValueNodeModificationStrategy<T extends DataSchemaNode, V extends NormalizedNode<?, ?>>
+        extends SchemaAwareApplyOperation<T> {
+    private final @NonNull Class<V> nodeClass;
     private final @NonNull T schema;
 
-    ValueNodeModificationStrategy(final Class<? extends ValueNode> nodeClass, final T schema) {
+    ValueNodeModificationStrategy(final Class<V> nodeClass, final T schema) {
         this.nodeClass = requireNonNull(nodeClass);
         this.schema = requireNonNull(schema);
     }