X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=binding%2Fmdsal-binding-spec-util%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fmdsal%2Fbinding%2Fspec%2Fnaming%2FBindingMapping.java;h=2e915694e511b4536ed8e013f3b056daa9c56d3f;hb=refs%2Fchanges%2F66%2F86466%2F1;hp=4513b60c567a31696ba9e092bf9e202c07a0ef47;hpb=fe28fd1721be937add6bd220c686ed023c6f0529;p=mdsal.git diff --git a/binding/mdsal-binding-spec-util/src/main/java/org/opendaylight/mdsal/binding/spec/naming/BindingMapping.java b/binding/mdsal-binding-spec-util/src/main/java/org/opendaylight/mdsal/binding/spec/naming/BindingMapping.java index 4513b60c56..2e915694e5 100644 --- a/binding/mdsal-binding-spec-util/src/main/java/org/opendaylight/mdsal/binding/spec/naming/BindingMapping.java +++ b/binding/mdsal-binding-spec-util/src/main/java/org/opendaylight/mdsal/binding/spec/naming/BindingMapping.java @@ -291,6 +291,18 @@ public final class BindingMapping { return str.substring(0, 1).toLowerCase(Locale.ENGLISH) + str.substring(1); } + /** + * Returns the {@link String} {@code s} with a '$' character as suffix. + * + * @param qname RPC QName + * @return The RPC method name as determined by considering the localname against the JLS. + * @throws NullPointerException if {@code qname} is null + */ + public static @NonNull String getRpcMethodName(final @NonNull QName qname) { + final String methodName = getMethodName(qname); + return JAVA_RESERVED_WORDS.contains(methodName) ? methodName + "$" : methodName; + } + /** * Returns Java identifiers, conforming to JLS9 Section 3.8 to use for specified YANG assigned names * (RFC7950 Section 9.6.4). This method considers two distinct encodings: one the pre-Fluorine mapping, which is