Generate interface methods without "public" 80/45980/2
authorStephen Kitt <skitt@redhat.com>
Wed, 21 Sep 2016 14:21:26 +0000 (16:21 +0200)
committerTom Pantelis <tpanteli@brocade.com>
Thu, 22 Sep 2016 13:47:11 +0000 (13:47 +0000)
Method now tracks visibility explicitly; declarations have a blank
specifier, definitions have "public".

Change-Id: I6b1ce1c58d4f9f861e3117a6bf34aa5c9d6c5aa4
Signed-off-by: Stephen Kitt <skitt@redhat.com>
opendaylight/config/yang-jmx-generator-plugin/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/plugin/ftl/model/Method.java
opendaylight/config/yang-jmx-generator-plugin/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/plugin/ftl/model/MethodDeclaration.java
opendaylight/config/yang-jmx-generator-plugin/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/plugin/ftl/model/MethodDefinition.java
opendaylight/config/yang-jmx-generator-plugin/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/plugin/ftl/model/MethodSerializer.java

index 3d2fff7f98e0a7cd042e73231fa6876006da26e9..d83a70ccee376c9ddfd24c6406e862ad2b1ce3a9 100644 (file)
@@ -10,6 +10,8 @@ package org.opendaylight.controller.config.yangjmxgenerator.plugin.ftl.model;
 import java.util.List;
 
 public interface Method {
+    String getVisibility();
+
     List<String> getModifiers();
 
     String getReturnType();
index be6b23e879e36de82bb1a2abf5f82107a161ea11..425f85fe25d1259e8cda5b14f91f106911ee4443 100644 (file)
@@ -9,6 +9,7 @@ package org.opendaylight.controller.config.yangjmxgenerator.plugin.ftl.model;
 
 import java.util.Collections;
 import java.util.List;
+import org.apache.commons.lang3.StringUtils;
 
 public class MethodDeclaration implements Method {
     private final String returnType;
@@ -44,6 +45,11 @@ public class MethodDeclaration implements Method {
         this.javadoc = javadoc;
     }
 
+    @Override
+    public String getVisibility() {
+        return StringUtils.EMPTY;
+    }
+
     @Override
     public String getReturnType() {
         return returnType;
index 9af011fe7199230d03f7e00a93bcca10e0b96b9b..1d0e3a40bf6b2064e4c48e24d8409cfba961f7b3 100644 (file)
@@ -9,8 +9,11 @@ package org.opendaylight.controller.config.yangjmxgenerator.plugin.ftl.model;
 
 import java.util.Collections;
 import java.util.List;
+import javax.lang.model.element.Modifier;
 
 public class MethodDefinition implements Method {
+    private static final String VISIBILITY_PUBLIC = Modifier.PUBLIC.toString();
+
     private final List<String> modifiers;
     private final String returnType;
     private final String name;
@@ -66,6 +69,11 @@ public class MethodDefinition implements Method {
         this.javadoc = javadoc;
     }
 
+    @Override
+    public String getVisibility() {
+        return VISIBILITY_PUBLIC;
+    }
+
     @Override
     public String getReturnType() {
         return returnType;
index eba6e53e23257899ccc178760cd3bc30b8e676f6..4d727ae5b7582176bd8670d434cc9bf92bc85c66 100644 (file)
@@ -22,7 +22,8 @@ class MethodSerializer {
             build.append(a);
         }
 
-        build.append("    " + "public ");
+        build.append("    ");
+        build.append(method.getVisibility()).append(" ");
         for (String mod : method.getModifiers()) {
             build.append(mod).append(" ");
         }