From de43fdaa5adfeaa05324abaf3f47a9b1174b086a Mon Sep 17 00:00:00 2001 From: Jie Han Date: Fri, 3 Nov 2017 09:05:09 +0800 Subject: [PATCH] MDSAL-294: Binding v1 generator - Add @CheckReturnValue on RPC methods - Use @CheckReturnValue annotation in static code analysis to ensure that all users of the RPC do check the Future RpcResult for errors - even if there is no Output. Change-Id: I7b4e5f0d7ca81db154a39325490a46bfcf8820a4 Signed-off-by: Jie Han Signed-off-by: Robert Varga --- .../mdsal/binding/generator/impl/BindingGeneratorImpl.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/binding/mdsal-binding-generator-impl/src/main/java/org/opendaylight/mdsal/binding/generator/impl/BindingGeneratorImpl.java b/binding/mdsal-binding-generator-impl/src/main/java/org/opendaylight/mdsal/binding/generator/impl/BindingGeneratorImpl.java index 853fad8536..f6bb3c5f63 100644 --- a/binding/mdsal-binding-generator-impl/src/main/java/org/opendaylight/mdsal/binding/generator/impl/BindingGeneratorImpl.java +++ b/binding/mdsal-binding-generator-impl/src/main/java/org/opendaylight/mdsal/binding/generator/impl/BindingGeneratorImpl.java @@ -510,6 +510,9 @@ public class BindingGeneratorImpl implements BindingGenerator { final ContainerSchemaNode input = rpc.getInput(); final ContainerSchemaNode output = rpc.getOutput(); + // Do not refer to annotation class, as it may not be available at runtime + method.addAnnotation("javax.annotation", "CheckReturnValue"); + //in case of implicit RPC input (StatementSource.CONTEXT), // stay compatible (no input argument generated) if (input != null && isExplicitStatement(input)) { -- 2.36.6