Remove BindingDataAware 74/87874/1
authorRobert Varga <robert.varga@pantheon.tech>
Tue, 18 Feb 2020 21:01:10 +0000 (22:01 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Tue, 18 Feb 2020 21:01:49 +0000 (22:01 +0100)
We have an equivalent interface in BindingLazyContainerNode,
hence there is no point in keeping an adapter-specific interface
around.

JIRA: MDSAL-392
Change-Id: I1beb3dc8f709bbce80aee5a9d64ef11f75926a41
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMRpcImplementationAdapter.java
binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDataAware.java [deleted file]
binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/LazySerializedContainerNode.java
binding/mdsal-binding-dom-adapter/src/test/java/org/opendaylight/mdsal/binding/dom/adapter/LazySerializedContainerNodeTest.java
binding/mdsal-binding-dom-codec-api/src/main/java/org/opendaylight/mdsal/binding/dom/codec/api/BindingLazyContainerNode.java

index 1cd70ed0904ee2b033bbc39c417ef4cb9ed4d243..3a02bfaf9c1eb94c338f7a83f9f0edfe5289ec9c 100644 (file)
@@ -19,6 +19,7 @@ import java.util.Map;
 import java.util.Map.Entry;
 import java.util.concurrent.ExecutionException;
 import org.opendaylight.mdsal.binding.dom.adapter.invoke.RpcServiceInvoker;
+import org.opendaylight.mdsal.binding.dom.codec.api.BindingLazyContainerNode;
 import org.opendaylight.mdsal.binding.dom.codec.impl.BindingNormalizedNodeCodecRegistry;
 import org.opendaylight.mdsal.binding.spec.reflect.BindingReflections;
 import org.opendaylight.mdsal.dom.api.DOMRpcIdentifier;
@@ -79,8 +80,8 @@ public class BindingDOMRpcImplementationAdapter implements DOMRpcImplementation
     }
 
     private DataObject deserialize(final SchemaPath rpcPath, final NormalizedNode<?, ?> input) {
-        if (ENABLE_CODEC_SHORTCUT && input instanceof BindingDataAware) {
-            return ((BindingDataAware) input).bindingData();
+        if (ENABLE_CODEC_SHORTCUT && input instanceof BindingLazyContainerNode) {
+            return ((BindingLazyContainerNode<?>) input).getDataObject();
         }
         final SchemaPath inputSchemaPath = rpcPath.createChild(inputQname);
         return codec.fromNormalizedNodeRpcData(inputSchemaPath, (ContainerNode) input);
diff --git a/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDataAware.java b/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDataAware.java
deleted file mode 100644 (file)
index 1b366df..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * Copyright (c) 2018 Pantheon Technologies, s.r.o. and others. All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-package org.opendaylight.mdsal.binding.dom.adapter;
-
-import org.opendaylight.yangtools.yang.binding.DataObject;
-
-/**
- * Migration trait for exposing the Binding data object.
- *
- * @author Robert Varga
- */
-@Deprecated
-public interface BindingDataAware {
-
-    DataObject bindingData();
-}
index 9f1fa5a0d77e2532832ddb7430a87b72409c0a2c..d230ca05a5202cad26edefebfeacc7bd4e820a37 100644 (file)
@@ -27,7 +27,7 @@ import org.opendaylight.yangtools.yang.model.api.SchemaPath;
  *        deprecated, as we want to move to actions in the long term.
  */
 class LazySerializedContainerNode extends AbstractBindingLazyContainerNode<DataObject,
-        BindingNormalizedNodeCodecRegistry> implements BindingDataAware {
+        BindingNormalizedNodeCodecRegistry> {
 
     private LazySerializedContainerNode(final QName identifier, final DataObject binding,
             final BindingNormalizedNodeCodecRegistry registry) {
@@ -44,11 +44,6 @@ class LazySerializedContainerNode extends AbstractBindingLazyContainerNode<DataO
         return new WithContextRef(rpcName.getLastComponent(), data, contextRef, codec);
     }
 
-    @Override
-    public final DataObject bindingData() {
-        return getDataObject();
-    }
-
     @Override
     protected final ContainerNode computeContainerNode(final BindingNormalizedNodeCodecRegistry context) {
         return context.toNormalizedNodeRpcData(getDataObject());
index e71b601d2c3acd42f7fd17e670bea3f13a9bc4f7..4bdb889158ccbba43721ed1950ca62937cfd1e4d 100644 (file)
@@ -67,6 +67,6 @@ public class LazySerializedContainerNodeTest {
         assertEquals(lazySerializedContainerNode.getIdentifier().getNodeType(),
                 lazySerializedContainerNode.getNodeType());
         assertEquals(rpcName.getLastComponent(), lazySerializedContainerNode.getIdentifier().getNodeType());
-        assertEquals(dataObject, lazySerializedContainerNode.bindingData());
+        assertEquals(dataObject, lazySerializedContainerNode.getDataObject());
     }
 }
\ No newline at end of file
index 750972685175125442c86bfb3efe6528d74b72da..a3dc8dd4b12a68c169e2017a552053a64113aa46 100644 (file)
@@ -8,7 +8,7 @@
 package org.opendaylight.mdsal.binding.dom.codec.api;
 
 import com.google.common.annotations.Beta;
-import org.eclipse.jdt.annotation.NonNullByDefault;
+import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.concepts.Delegator;
 import org.opendaylight.yangtools.yang.binding.DataObject;
 import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
@@ -20,12 +20,11 @@ import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
  * @author Robert Varga
  */
 @Beta
-@NonNullByDefault
-public interface BindingLazyContainerNode<T> extends ContainerNode, Delegator<ContainerNode> {
+public interface BindingLazyContainerNode<T extends DataObject> extends ContainerNode, Delegator<ContainerNode> {
     /**
      * Returns the underlying DataObject.
      *
      * @return underlying DataObject.
      */
-    T getDataObject();
+    @NonNull T getDataObject();
 }