[ONOS-4839] update file priority for translator and OP param file impl defect fix

Change-Id: Ieaef43f915996ed0a34dfa17c338ab612716b2bc
diff --git a/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/ietfyang/IetfYangFileTest.java b/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/ietfyang/IetfYangFileTest.java
index 7176760..7a1ab65 100644
--- a/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/ietfyang/IetfYangFileTest.java
+++ b/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/ietfyang/IetfYangFileTest.java
@@ -56,7 +56,7 @@
         yangPluginConfig.setCodeGenDir("target/ietfyang/l3vpnservice/");
         yangPluginConfig.setManagerCodeGenDir("target/ietfyang/l3vpnservice/");
 
-        utilManager.translateToJava(utilManager.getYangFileInfoSet(), yangPluginConfig);
+        utilManager.translateToJava(yangPluginConfig);
 
         deleteDirectory(userDir + "/target/ietfyang/");
     }
diff --git a/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/AugmentTranslatorTest.java b/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/AugmentTranslatorTest.java
index 821a435..f502835 100644
--- a/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/AugmentTranslatorTest.java
+++ b/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/AugmentTranslatorTest.java
@@ -50,7 +50,7 @@
         YangPluginConfig yangPluginConfig = new YangPluginConfig();
         yangPluginConfig.setCodeGenDir("target/augmentTranslator/");
         yangPluginConfig.setManagerCodeGenDir("target/augmentTranslator/");
-        utilManager.translateToJava(utilManager.getYangFileInfoSet(), yangPluginConfig);
+        utilManager.translateToJava(yangPluginConfig);
 
         deleteDirectory("target/augmentTranslator/");
     }
diff --git a/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/InterFileLinkingTest.java b/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/InterFileLinkingTest.java
index 675fea6..8052f30 100644
--- a/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/InterFileLinkingTest.java
+++ b/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/InterFileLinkingTest.java
@@ -638,7 +638,7 @@
         yangPluginConfig.setCodeGenDir("target/interfilewithusesreferringtype/");
         yangPluginConfig.setManagerCodeGenDir("target/interfilewithusesreferringtype/");
 
-        utilManager.translateToJava(utilManager.getYangFileInfoSet(), yangPluginConfig);
+        utilManager.translateToJava(yangPluginConfig);
 
         deleteDirectory("target/interfilewithusesreferringtype/");
 
@@ -660,7 +660,7 @@
         yangPluginConfig.setCodeGenDir("target/file1UsesFile2TypeDefFile3Type/");
         yangPluginConfig.setManagerCodeGenDir("target/file1UsesFile2TypeDefFile3Type/");
 
-        utilManager.translateToJava(utilManager.getYangFileInfoSet(), yangPluginConfig);
+        utilManager.translateToJava(yangPluginConfig);
 
         deleteDirectory("target/file1UsesFile2TypeDefFile3Type/");
 
@@ -682,7 +682,7 @@
         yangPluginConfig.setCodeGenDir("target/interfileietf/");
         yangPluginConfig.setManagerCodeGenDir("target/interfileietf/");
 
-        utilManager.translateToJava(utilManager.getYangFileInfoSet(), yangPluginConfig);
+        utilManager.translateToJava(yangPluginConfig);
 
         deleteDirectory("target/interfileietf/");
 
@@ -704,7 +704,7 @@
         yangPluginConfig.setCodeGenDir("target/usesInContainer/");
         yangPluginConfig.setManagerCodeGenDir("target/usesInContainer/");
 
-        utilManager.translateToJava(utilManager.getYangFileInfoSet(), yangPluginConfig);
+        utilManager.translateToJava(yangPluginConfig);
 
         deleteDirectory("target/usesInContainer/");
 
@@ -726,7 +726,7 @@
         yangPluginConfig.setCodeGenDir("target/groupingNodeSameAsModule/");
         yangPluginConfig.setManagerCodeGenDir("target/groupingNodeSameAsModule/");
 
-        utilManager.translateToJava(utilManager.getYangFileInfoSet(), yangPluginConfig);
+        utilManager.translateToJava(yangPluginConfig);
 
         deleteDirectory("target/groupingNodeSameAsModule/");
 
diff --git a/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/InterJarLinkerTest.java b/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/InterJarLinkerTest.java
index 16962f2..94585a2 100644
--- a/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/InterJarLinkerTest.java
+++ b/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/InterJarLinkerTest.java
@@ -191,7 +191,7 @@
         yangPluginConfig.setCodeGenDir(TARGET);
         yangPluginConfig.setManagerCodeGenDir(TARGET);
 
-        utilManager.translateToJava(utilManager.getYangFileInfoSet(), yangPluginConfig);
+        utilManager.translateToJava(yangPluginConfig);
 
         testIfFlowClassifierFilesExists();
         testIfPortPairFileDoesNotExist();
@@ -308,6 +308,7 @@
 
             for (YangNode node : interJarResolvedNodes) {
                 YangFileInfo dependentFileInfo = new YangFileInfo();
+                node.setToTranslate(false);
                 dependentFileInfo.setRootNode(node);
                 dependentFileInfo.setForTranslator(false);
                 dependentFileInfo.setYangFileName(node.getName());
diff --git a/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/ManagerCodeGeneratorTest.java b/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/ManagerCodeGeneratorTest.java
index 817fb4e..c3b2fe7 100644
--- a/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/ManagerCodeGeneratorTest.java
+++ b/utils/yangutils/plugin/src/test/java/org/onosproject/yangutils/plugin/manager/ManagerCodeGeneratorTest.java
@@ -44,7 +44,7 @@
     @Test
     public void processManagerTranslator() throws IOException, ParserException, MojoExecutionException {
 
-        String searchDir = "src/test/resources/manager";
+        String searchDir = "src/test/resources/manager/singleChild";
         utilManager.createYangFileInfoSet(YangFileScanner.getYangFiles(searchDir));
         utilManager.parseYangFileInfoSet();
         utilManager.createYangNodeSet();
@@ -54,7 +54,7 @@
         yangPluginConfig.setCodeGenDir("target/manager/");
         yangPluginConfig.setManagerCodeGenDir("target/manager/");
 
-        utilManager.translateToJava(utilManager.getYangFileInfoSet(), yangPluginConfig);
+        utilManager.translateToJava(yangPluginConfig);
         String file1 = "target/manager/org/onosproject/yang/gen/v1/test5/test/rev20160704/Test5Manager.java";
         String file2 = "target/manager/org/onosproject/yang/gen/v1/test5/test/rev20160704/Test6Manager.java";
         String file3 = "target/manager/org/onosproject/yang/gen/v1/test5/test/rev20160704/Test7Manager.java";
@@ -79,7 +79,7 @@
     public void processManagerInDifferentPackageTranslator() throws IOException, ParserException,
             MojoExecutionException {
 
-        String searchDir = "src/test/resources/manager";
+        String searchDir = "src/test/resources/manager/singleChild";
         utilManager.createYangFileInfoSet(YangFileScanner.getYangFiles(searchDir));
         utilManager.parseYangFileInfoSet();
         utilManager.createYangNodeSet();
@@ -87,10 +87,10 @@
 
         YangPluginConfig yangPluginConfig = new YangPluginConfig();
         yangPluginConfig.setCodeGenDir("target/manager/");
-        yangPluginConfig.setManagerCodeGenDir("target/manager1/");
+        yangPluginConfig.setManagerCodeGenDir("target/manager/");
 
-        utilManager.translateToJava(utilManager.getYangFileInfoSet(), yangPluginConfig);
-        String file3 = "target/manager1/org/onosproject/yang/gen/v1/test5/test/rev20160704/Test7Manager.java";
+        utilManager.translateToJava(yangPluginConfig);
+        String file3 = "target/manager/org/onosproject/yang/gen/v1/test5/test/rev20160704/Test7Manager.java";
 
         File manager3 = new File(file3);
         assertThat(true, is(manager3.exists()));
@@ -98,4 +98,48 @@
         deleteDirectory("target/manager/");
         deleteDirectory("target/manager1/");
     }
+
+    /**
+     * Checks manager translation in different package should not result in any exception.
+     *
+     * @throws MojoExecutionException
+     */
+    @Test
+    public void processManagerforMultiChildTranslator() throws IOException, ParserException,
+            MojoExecutionException {
+
+        String searchDir = "src/test/resources/manager/MultiChild";
+        utilManager.createYangFileInfoSet(YangFileScanner.getYangFiles(searchDir));
+        utilManager.parseYangFileInfoSet();
+        utilManager.createYangNodeSet();
+        utilManager.resolveDependenciesUsingLinker();
+
+        YangPluginConfig yangPluginConfig = new YangPluginConfig();
+        yangPluginConfig.setCodeGenDir("target/manager/");
+        yangPluginConfig.setManagerCodeGenDir("target/manager/");
+
+        utilManager.translateToJava(yangPluginConfig);
+        String file1 = "target/manager/org/onosproject/yang/gen/v1/test5/test/rev20160704/Test5Manager.java";
+
+        File manager1 = new File(file1);
+        assertThat(false, is(manager1.exists()));
+
+        String file2 = "target/manager/org/onosproject/yang/gen/v1/test5/test/rev20160704/Test6Manager.java";
+
+        File manager2 = new File(file2);
+        assertThat(false, is(manager2.exists()));
+
+        String file3 = "target/manager/org/onosproject/yang/gen/v1/test5/test/rev20160704/Test7Manager.java";
+
+        File manager3 = new File(file3);
+        assertThat(false, is(manager3.exists()));
+
+        String file4 = "target/manager/org/onosproject/yang/gen/v1/test8/test/rev20160704/Test8Manager.java";
+
+        File manager4 = new File(file4);
+        assertThat(true, is(manager4.exists()));
+
+        deleteDirectory("target/manager/");
+        deleteDirectory("target/manager1/");
+    }
 }