Quick fix nullable RPC input 30/16330/3
authorVaclav Demcak <vdemcak@cisco.com>
Wed, 11 Mar 2015 15:06:10 +0000 (16:06 +0100)
committerVaclav Demcak <vdemcak@cisco.com>
Wed, 11 Mar 2015 16:46:14 +0000 (17:46 +0100)
commitda885db2b48cf396fbeea99f705f21d1467adebe
treec06b9e556f7e5d10f6fcf7c7bd26ddcc18bb4506
parent85baaf2117d4882ba8eb625b0ff158867f9db614
Quick fix nullable RPC input

* DOMRpcService is declaring a method invokeRpc like
invokeRpc(@Nonnull SchemaPath type, @Nullable NormalizedNode<?, ?> input)

* add check to null for input in BindingRpcImplementationAdapter and
BindingDOMRpcImplementationAdapter because they are trying to deserialze
input automaticly withou any null check before. It produces next exception
for nopayload rpc:

at com.google.common.base.Preconditions.checkState(Preconditions.java:158)
at org.opendaylight.yangtools.binding.data.codec.impl.ContainerNodeCodecContext
.dataFromNormalizedNode(ContainerNodeCodecContext.java:23)
at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry
.fromNormalizedNodeRpcData(BindingNormalizedNodeCodecRegistry.java:197)
at org.opendaylight.controller.md.sal.binding.impl.BindingRpcImplementationAdapter
.deserilialize(BindingRpcImplementationAdapter.java:79)
at org.opendaylight.controller.md.sal.binding.impl.BindingRpcImplementationAdapter
.invokeRpc(BindingRpcImplementationAdapter.java:69)

Change-Id: I3970564b9645473eee6c01ab1ea632f323de959a
Signed-off-by: Vaclav Demcak <vdemcak@cisco.com>
opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/md/sal/binding/impl/BindingDOMRpcImplementationAdapter.java
opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/md/sal/binding/impl/BindingRpcImplementationAdapter.java