Improve BindingNormalizedNodeSerializer API
[mdsal.git] / binding / mdsal-binding-dom-codec-spi / src / main / java / org / opendaylight / mdsal / binding / dom / codec / spi / ForwardingBindingDOMCodecServices.java
index 167e65fb0da4931248ceca60081cd7eb19d56cc8..8eb9dee6a57b70711fc5fbafcdb68b4a1064be38 100644 (file)
@@ -12,14 +12,18 @@ import com.google.common.collect.ForwardingObject;
 import java.time.Instant;
 import java.util.Map.Entry;
 import org.eclipse.jdt.annotation.NonNull;
+import org.opendaylight.mdsal.binding.dom.codec.api.BindingAugmentationCodecTreeNode;
 import org.opendaylight.mdsal.binding.dom.codec.api.BindingCodecTreeNode;
 import org.opendaylight.mdsal.binding.dom.codec.api.BindingDataObjectCodecTreeNode;
 import org.opendaylight.mdsal.binding.dom.codec.api.BindingIdentityCodec;
 import org.opendaylight.mdsal.binding.dom.codec.api.BindingInstanceIdentifierCodec;
 import org.opendaylight.mdsal.binding.dom.codec.api.BindingLazyContainerNode;
 import org.opendaylight.mdsal.binding.dom.codec.api.BindingStreamEventWriter;
+import org.opendaylight.mdsal.binding.dom.codec.api.CommonDataObjectCodecTreeNode;
 import org.opendaylight.mdsal.binding.runtime.api.BindingRuntimeContext;
 import org.opendaylight.yangtools.yang.binding.Action;
+import org.opendaylight.yangtools.yang.binding.Augmentation;
+import org.opendaylight.yangtools.yang.binding.BaseNotification;
 import org.opendaylight.yangtools.yang.binding.DataContainer;
 import org.opendaylight.yangtools.yang.binding.DataObject;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
@@ -61,16 +65,32 @@ public abstract class ForwardingBindingDOMCodecServices extends ForwardingObject
     }
 
     @Override
-    public <T extends DataObject> Entry<YangInstanceIdentifier, NormalizedNode> toNormalizedNode(
-            final InstanceIdentifier<T> path, final T data) {
+    public <T extends DataObject> NormalizedResult toNormalizedNode(final InstanceIdentifier<T> path, final T data) {
         return delegate().toNormalizedNode(path, data);
     }
 
+    @Override
+    public <A extends Augmentation<?>> @NonNull AugmentationResult toNormalizedAugmentation(
+            final InstanceIdentifier<A> path, final A data) {
+        return delegate().toNormalizedAugmentation(path, data);
+    }
+
+    @Override
+    public <T extends DataObject> @NonNull NodeResult toNormalizedDataObject(final InstanceIdentifier<T> path,
+            final T data) {
+        return delegate().toNormalizedDataObject(path, data);
+    }
+
     @Override
     public ContainerNode toNormalizedNodeNotification(final Notification<?> data) {
         return delegate().toNormalizedNodeNotification(data);
     }
 
+    @Override
+    public ContainerNode toNormalizedNodeNotification(final Absolute path, final BaseNotification data) {
+        return delegate().toNormalizedNodeNotification(path, data);
+    }
+
     @Override
     public ContainerNode toNormalizedNodeRpcData(final DataContainer data) {
         return delegate().toNormalizedNodeRpcData(data);
@@ -95,12 +115,12 @@ public abstract class ForwardingBindingDOMCodecServices extends ForwardingObject
     }
 
     @Override
-    public Notification<?> fromNormalizedNodeNotification(final Absolute path, final ContainerNode data) {
+    public BaseNotification fromNormalizedNodeNotification(final Absolute path, final ContainerNode data) {
         return delegate().fromNormalizedNodeNotification(path, data);
     }
 
     @Override
-    public Notification<?> fromNormalizedNodeNotification(final Absolute path, final ContainerNode data,
+    public BaseNotification fromNormalizedNodeNotification(final Absolute path, final ContainerNode data,
             final Instant eventInstant) {
         return delegate().fromNormalizedNodeNotification(path, data, eventInstant);
     }
@@ -155,11 +175,28 @@ public abstract class ForwardingBindingDOMCodecServices extends ForwardingObject
     @Override
     public BindingStreamEventWriter newRpcWriter(final Class<? extends DataContainer> rpcInputOrOutput,
             final NormalizedNodeStreamWriter streamWriter) {
-        return delegate().newRpcWriter(rpcInputOrOutput,streamWriter);
+        return delegate().newRpcWriter(rpcInputOrOutput, streamWriter);
     }
 
     @Override
-    public <T extends DataObject> BindingDataObjectCodecTreeNode<T> getSubtreeCodec(final InstanceIdentifier<T> path) {
+    public <T extends DataObject> CodecWithPath<T> getSubtreeCodecWithPath(final InstanceIdentifier<T> path) {
+        return delegate().getSubtreeCodecWithPath(path);
+    }
+
+    @Override
+    public <A extends Augmentation<?>> BindingAugmentationCodecTreeNode<A> getAugmentationCodec(
+            final InstanceIdentifier<A> path) {
+        return delegate().getAugmentationCodec(path);
+    }
+
+    @Override
+    public <T extends DataObject> BindingDataObjectCodecTreeNode<T> getDataObjectCodec(
+            final InstanceIdentifier<T> path) {
+        return delegate().getDataObjectCodec(path);
+    }
+
+    @Override
+    public <T extends DataObject> CommonDataObjectCodecTreeNode<T> getSubtreeCodec(final InstanceIdentifier<T> path) {
         return delegate().getSubtreeCodec(path);
     }
 
@@ -187,4 +224,9 @@ public abstract class ForwardingBindingDOMCodecServices extends ForwardingObject
     public BindingRuntimeContext getRuntimeContext() {
         return delegate().getRuntimeContext();
     }
+
+    @Override
+    public <E extends DataObject> CommonDataObjectCodecTreeNode<E> streamChild(final Class<E> childClass) {
+        return delegate().streamChild(childClass);
+    }
 }