[ONOS-4616] YANG grouping linker issues fixed.

Change-Id: I741aa9ad1008c02c9a9f90cc117cd43729132129
diff --git a/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/AttributesJavaDataType.java b/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/AttributesJavaDataType.java
index cb23994..9e7cc5c 100644
--- a/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/AttributesJavaDataType.java
+++ b/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/AttributesJavaDataType.java
@@ -270,11 +270,10 @@
      *
      * @param yangType YANG type
      * @param isListAttr if the attribute is of list type
-     * @param classInfo java import class info
      * @param conflictResolver object of YANG to java naming conflict util
      * @return java import package
      */
-    public static String getJavaImportPackage(YangType<?> yangType, boolean isListAttr, String classInfo,
+    public static String getJavaImportPackage(YangType<?> yangType, boolean isListAttr,
             YangToJavaNamingConflictUtil conflictResolver) {
 
         YangDataTypes type = yangType.getDataType();
@@ -430,13 +429,13 @@
                 YangJavaModule module = (YangJavaModule) parent;
                 String modulePkg = getRootPackage(module.getVersion(), module.getNameSpace().getUri(), module
                         .getRevision().getRevDate(), conflictResolver);
-                return modulePkg + PERIOD + getCamelCase(module.getName(), null).toLowerCase();
+                return modulePkg + PERIOD + getCamelCase(module.getName(), conflictResolver).toLowerCase();
             } else if (parent instanceof YangJavaSubModule) {
                 YangJavaSubModule submodule = (YangJavaSubModule) parent;
                 String subModulePkg = getRootPackage(submodule.getVersion(),
                         submodule.getNameSpaceFromModule(submodule.getBelongsTo()),
                         submodule.getRevision().getRevDate(), conflictResolver);
-                return subModulePkg + PERIOD + getCamelCase(submodule.getName(), null).toLowerCase();
+                return subModulePkg + PERIOD + getCamelCase(submodule.getName(), conflictResolver).toLowerCase();
             }
         }
         return parentInfo.getPackage() + PERIOD + parentInfo.getJavaName().toLowerCase();
diff --git a/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/JavaCodeSnippetGen.java b/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/JavaCodeSnippetGen.java
index c84fe40..b254e87 100644
--- a/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/JavaCodeSnippetGen.java
+++ b/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/JavaCodeSnippetGen.java
@@ -115,7 +115,7 @@
      * @param type attribute type
      * @return list attribute string
      */
-    private static String getListAttribute(String type) {
+    public static String getListAttribute(String type) {
         return LIST + DIAMOND_OPEN_BRACKET + type + DIAMOND_CLOSE_BRACKET;
     }
 
diff --git a/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/JavaIdentifierSyntax.java b/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/JavaIdentifierSyntax.java
index a4e9cfa..0b3beb0 100644
--- a/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/JavaIdentifierSyntax.java
+++ b/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/JavaIdentifierSyntax.java
@@ -366,7 +366,7 @@
             i = 1;
         }
         for (; i < stringArray.length; i++) {
-            if ((i + 1) == stringArray.length) {
+            if (i + 1 == stringArray.length) {
                 if (stringArray[i].matches(REGEX_FOR_SINGLE_LETTER)
                         || stringArray[i].matches(REGEX_FOR_DIGITS_WITH_SINGLE_LETTER)) {
                     ruleChecker = ruleChecker + stringArray[i].toLowerCase();
diff --git a/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/MethodsGenerator.java b/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/MethodsGenerator.java
index d9f22ed..b6889c8 100644
--- a/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/MethodsGenerator.java
+++ b/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/MethodsGenerator.java
@@ -265,7 +265,7 @@
      * @return getter for attribute
      */
     public static String getGetter(String type, String name, int generatedJavaFiles) {
-        String ret = parseTypeForGetter(type);
+        String ret = parseTypeForReturnValue(type);
         if ((generatedJavaFiles & GENERATE_SERVICE_AND_MANAGER) != 0) {
             return FOUR_SPACE_INDENTATION + PUBLIC + SPACE + type + SPACE + GET_METHOD_PREFIX + getCapitalCase(name)
                     + OPEN_PARENTHESIS + CLOSE_PARENTHESIS + SPACE + OPEN_CURLY_BRACKET + NEW_LINE +
@@ -281,7 +281,7 @@
     }
 
     /*Provides string to return for type.*/
-    private static String parseTypeForGetter(String type) {
+    private static String parseTypeForReturnValue(String type) {
         switch (type) {
         case BYTE:
         case INT:
@@ -555,12 +555,11 @@
             YangPluginConfig pluginConfig) {
 
         rpcName = getCamelCase(rpcName, pluginConfig.getConflictResolver());
-        inputName = getCapitalCase(inputName);
-        if (!outputName.equals(VOID)) {
-            outputName = getCapitalCase(outputName);
+        if (!inputName.equals(EMPTY_STRING)) {
+            inputName = inputName + SPACE + RPC_INPUT_VAR_NAME;
         }
-        return FOUR_SPACE_INDENTATION + outputName + SPACE + rpcName + OPEN_PARENTHESIS + inputName + SPACE
-                + RPC_INPUT_VAR_NAME + CLOSE_PARENTHESIS + SEMI_COLAN;
+        return FOUR_SPACE_INDENTATION + outputName + SPACE + rpcName + OPEN_PARENTHESIS + inputName
+                + CLOSE_PARENTHESIS + SEMI_COLAN;
     }
 
     /**
@@ -576,16 +575,17 @@
             YangPluginConfig pluginConfig) {
 
         rpcName = getCamelCase(rpcName, pluginConfig.getConflictResolver());
-        inputName = getCapitalCase(inputName);
-        if (!outputName.equals(VOID)) {
-            outputName = getCapitalCase(outputName);
+        if (!inputName.equals(EMPTY_STRING)) {
+            inputName = inputName + SPACE + RPC_INPUT_VAR_NAME;
         }
 
-        String method = getOverRideString() + FOUR_SPACE_INDENTATION + PUBLIC + SPACE + outputName + SPACE + rpcName
-                + OPEN_PARENTHESIS + inputName + SPACE + RPC_INPUT_VAR_NAME + CLOSE_PARENTHESIS + SPACE
-                + OPEN_CURLY_BRACKET + NEW_LINE + EIGHT_SPACE_INDENTATION + YANG_UTILS_TODO + NEW_LINE;
+        String method =
+                getOverRideString() + FOUR_SPACE_INDENTATION + PUBLIC + SPACE + outputName + SPACE + rpcName
+                        + OPEN_PARENTHESIS + inputName + CLOSE_PARENTHESIS + SPACE
+                        + OPEN_CURLY_BRACKET + NEW_LINE + EIGHT_SPACE_INDENTATION + YANG_UTILS_TODO + NEW_LINE;
         if (!outputName.contentEquals(VOID)) {
-            method += EIGHT_SPACE_INDENTATION + RETURN + SPACE + NULL + SEMI_COLAN + NEW_LINE;
+            method += EIGHT_SPACE_INDENTATION + RETURN + SPACE + parseTypeForReturnValue(outputName) + SEMI_COLAN
+                    + NEW_LINE;
         }
         method += FOUR_SPACE_INDENTATION + CLOSE_CURLY_BRACKET;
 
diff --git a/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/TempJavaCodeFragmentFilesUtils.java b/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/TempJavaCodeFragmentFilesUtils.java
index 1feeb51..617ac99 100644
--- a/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/TempJavaCodeFragmentFilesUtils.java
+++ b/utils/yangutils/src/main/java/org/onosproject/yangutils/translator/tojava/utils/TempJavaCodeFragmentFilesUtils.java
@@ -29,7 +29,10 @@
 import org.onosproject.yangutils.translator.tojava.TempJavaCodeFragmentFilesContainer;
 import org.onosproject.yangutils.translator.tojava.TempJavaFragmentFiles;
 import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaAugment;
+import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaInput;
 import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaModule;
+import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaOutput;
+import org.onosproject.yangutils.translator.tojava.javamodel.YangJavaSubModule;
 
 import static java.util.Collections.sort;
 
@@ -339,6 +342,12 @@
             JavaQualifiedTypeInfo qualifiedTypeInfo) {
 
         YangNode parent = curNode.getParent();
+        if (parent instanceof YangJavaModule
+                || parent instanceof YangJavaSubModule
+                || parent instanceof YangJavaInput
+                || parent instanceof YangJavaOutput) {
+            return false;
+        }
         String parentsClassInfo = getCapitalCase(((JavaFileInfoContainer) parent).getJavaFileInfo().getJavaName());
         String childsClassInfo = qualifiedTypeInfo.getClassInfo();
         if (childsClassInfo.equals(parentsClassInfo)) {