From 811493190dac2e88ec66e5a5cb311eeb25ffea1c Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Thu, 24 Nov 2022 19:13:55 +0100 Subject: [PATCH] LegacyDOMRpcImplementationAdapter is generic We are bridging to a well-defined RpcService subclass, hence this should be captured in the field type -- making the class generic. Change-Id: I46019e6e821a798474f639737c6fefe199bae8ee Signed-off-by: Robert Varga --- .../BindingDOMRpcProviderServiceAdapter.java | 2 +- .../LegacyDOMRpcImplementationAdapter.java | 8 ++++---- .../LegacyDOMRpcImplementationAdapterTest.java | 18 +++++++----------- 3 files changed, 12 insertions(+), 16 deletions(-) diff --git a/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMRpcProviderServiceAdapter.java b/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMRpcProviderServiceAdapter.java index 1cbaa454c1..07483d2cf6 100644 --- a/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMRpcProviderServiceAdapter.java +++ b/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMRpcProviderServiceAdapter.java @@ -114,7 +114,7 @@ public class BindingDOMRpcProviderServiceAdapter extends AbstractBindingAdapter< final var rpcs = serializer.getRpcMethodToQName(type).inverse(); return new BindingRpcAdapterRegistration<>(implementation, getDelegate().registerRpcImplementation( - new LegacyDOMRpcImplementationAdapter(adapterContext(), type, rpcs, implementation), + new LegacyDOMRpcImplementationAdapter<>(adapterContext(), type, rpcs, implementation), createDomRpcIdentifiers(rpcs.keySet(), rpcContextPaths))); } diff --git a/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/LegacyDOMRpcImplementationAdapter.java b/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/LegacyDOMRpcImplementationAdapter.java index 1e90b646e9..77ae2529ab 100644 --- a/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/LegacyDOMRpcImplementationAdapter.java +++ b/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/LegacyDOMRpcImplementationAdapter.java @@ -30,16 +30,16 @@ import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier.Absolute; @Deprecated(since = "11.0.0", forRemoval = true) -final class LegacyDOMRpcImplementationAdapter extends AbstractDOMRpcImplementationAdapter { +final class LegacyDOMRpcImplementationAdapter extends AbstractDOMRpcImplementationAdapter { private static final Cache, RpcServiceInvoker> SERVICE_INVOKERS = CacheBuilder.newBuilder().weakKeys() .build(); private final RpcServiceInvoker invoker; - private final RpcService delegate; + private final T delegate; private final QName inputQname; - LegacyDOMRpcImplementationAdapter(final AdapterContext adapterContext, - final Class type, final Map localNameToMethod, final T delegate) { + LegacyDOMRpcImplementationAdapter(final AdapterContext adapterContext, final Class type, + final Map localNameToMethod, final T delegate) { super(adapterContext); try { diff --git a/binding/mdsal-binding-dom-adapter/src/test/java/org/opendaylight/mdsal/binding/dom/adapter/LegacyDOMRpcImplementationAdapterTest.java b/binding/mdsal-binding-dom-adapter/src/test/java/org/opendaylight/mdsal/binding/dom/adapter/LegacyDOMRpcImplementationAdapterTest.java index 62bf308523..6bc42bf048 100644 --- a/binding/mdsal-binding-dom-adapter/src/test/java/org/opendaylight/mdsal/binding/dom/adapter/LegacyDOMRpcImplementationAdapterTest.java +++ b/binding/mdsal-binding-dom-adapter/src/test/java/org/opendaylight/mdsal/binding/dom/adapter/LegacyDOMRpcImplementationAdapterTest.java @@ -10,26 +10,22 @@ package org.opendaylight.mdsal.binding.dom.adapter; import static org.junit.Assert.assertNotNull; import static org.mockito.Mockito.mock; -import com.google.common.collect.ImmutableMap; -import java.lang.reflect.Method; +import java.util.Map; import org.junit.Test; import org.opendaylight.mdsal.binding.dom.codec.spi.BindingDOMCodecServices; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.test.bi.ba.rpcservice.rev140701.OpendaylightTestRpcServiceService; import org.opendaylight.yangtools.yang.common.QName; -import org.opendaylight.yangtools.yang.common.QNameModule; -import org.opendaylight.yangtools.yang.common.XMLNamespace; @Deprecated(since = "11.0.0", forRemoval = true) - public class LegacyDOMRpcImplementationAdapterTest { @Test public void basicTest() throws Exception { - final BindingDOMCodecServices registry = mock(BindingDOMCodecServices.class); - final Method testMethod = getClass().getDeclaredMethod("testMethod"); - final QName rpcType = QName.create(QNameModule.create(XMLNamespace.of("tst")), "test"); - final LegacyDOMRpcImplementationAdapter adapter = new LegacyDOMRpcImplementationAdapter( - new ConstantAdapterContext(registry), OpendaylightTestRpcServiceService.class, - ImmutableMap.of(rpcType, testMethod), mock(OpendaylightTestRpcServiceService.class)); + final var codecServices = mock(BindingDOMCodecServices.class); + final var testMethod = getClass().getDeclaredMethod("testMethod"); + final var rpcType = QName.create("tst", "test"); + final var adapter = new LegacyDOMRpcImplementationAdapter<>(new ConstantAdapterContext(codecServices), + OpendaylightTestRpcServiceService.class, Map.of(rpcType, testMethod), + mock(OpendaylightTestRpcServiceService.class)); assertNotNull(adapter); } -- 2.36.6