X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=binding%2Fmdsal-binding-dom-adapter%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fmdsal%2Fbinding%2Fdom%2Fadapter%2FBindingToNormalizedNodeCodec.java;h=55fde2cd655b19b5e47517d3ca0ec7895f84cf50;hb=6e6ebc43866204667658f8bbf7cfb6233caffdc7;hp=5dcdaa9c2a6514426261112914da4136c1487d5d;hpb=bb4390d1de7a68ba68e3f9fcb3a6435e688b62a1;p=mdsal.git diff --git a/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingToNormalizedNodeCodec.java b/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingToNormalizedNodeCodec.java index 5dcdaa9c2a..55fde2cd65 100644 --- a/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingToNormalizedNodeCodec.java +++ b/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingToNormalizedNodeCodec.java @@ -18,6 +18,7 @@ import com.google.common.collect.ImmutableBiMap; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterators; import java.lang.reflect.Method; +import java.time.Instant; import java.util.AbstractMap.SimpleEntry; import java.util.Collection; import java.util.HashSet; @@ -27,6 +28,9 @@ import java.util.Set; import java.util.concurrent.TimeUnit; import java.util.function.Function; import java.util.stream.Collectors; +import javax.annotation.PreDestroy; +import javax.inject.Inject; +import javax.inject.Singleton; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.mdsal.binding.api.DataTreeIdentifier; import org.opendaylight.mdsal.binding.dom.codec.api.BindingCodecTree; @@ -80,6 +84,7 @@ import org.slf4j.LoggerFactory; *

* NOTE: this class is non-final to allow controller adapter migration without duplicated code. */ +@Singleton public class BindingToNormalizedNodeCodec implements BindingCodecTreeFactory, BindingNormalizedNodeSerializer, SchemaContextListener, AutoCloseable { @@ -98,6 +103,7 @@ public class BindingToNormalizedNodeCodec implements BindingCodecTreeFactory, private final FutureSchema futureSchema; private ListenerRegistration listenerRegistration; + @Inject public BindingToNormalizedNodeCodec(final ClassLoadingStrategy classLoadingStrategy, final BindingNormalizedNodeCodecRegistry codecRegistry) { this(classLoadingStrategy, codecRegistry, false); @@ -190,6 +196,12 @@ public class BindingToNormalizedNodeCodec implements BindingCodecTreeFactory, return codecRegistry.fromNormalizedNodeNotification(path, data); } + @Override + public final Notification fromNormalizedNodeNotification(final SchemaPath path, final ContainerNode data, + final Instant eventInstant) { + return codecRegistry.fromNormalizedNodeNotification(path, data, eventInstant); + } + @Override public final DataObject fromNormalizedNodeRpcData(final SchemaPath path, final ContainerNode data) { return codecRegistry.fromNormalizedNodeRpcData(path, data); @@ -313,6 +325,7 @@ public class BindingToNormalizedNodeCodec implements BindingCodecTreeFactory, } @Override + @PreDestroy public void close() { if (listenerRegistration != null) { listenerRegistration.close(); @@ -382,7 +395,7 @@ public class BindingToNormalizedNodeCodec implements BindingCodecTreeFactory, private Method findRpcMethod(final Class key, final RpcDefinition rpcDef) throws NoSuchMethodException { - final String methodName = BindingMapping.getMethodName(rpcDef.getQName()); + final String methodName = BindingMapping.getRpcMethodName(rpcDef.getQName()); final Class inputClz = runtimeContext().getClassForSchema(rpcDef.getInput()); return key.getMethod(methodName, inputClz); }