[ONOS-3908] Implemetation of YANG container translator.

Change-Id: I9ffcfc4b370edb801dfc90c5394cef787c77641d
diff --git a/src/main/java/org/onosproject/yangutils/utils/UtilConstants.java b/src/main/java/org/onosproject/yangutils/utils/UtilConstants.java
index 336b87e..637d2f4 100644
--- a/src/main/java/org/onosproject/yangutils/utils/UtilConstants.java
+++ b/src/main/java/org/onosproject/yangutils/utils/UtilConstants.java
@@ -129,7 +129,7 @@
     public static final String STATIC = "static";
     public static final String FINAL = "final";
     public static final String PACKAGE = "package";
-    public static final String IMPORT = "import";
+    public static final String IMPORT = "import ";
     public static final String NULL = "null";
     public static final String RETURN = "return";
     public static final String NEW = "new";
@@ -144,6 +144,7 @@
     /**
      * For collections.
      */
+    public static final String COLLECTION_IMPORTS = "import java.util.";
     public static final String ABSTRACT_COLLECTION = "AbstractCollection";
 
     public static final String LIST = "List";
diff --git a/src/main/java/org/onosproject/yangutils/utils/io/impl/FileSystemUtil.java b/src/main/java/org/onosproject/yangutils/utils/io/impl/FileSystemUtil.java
index f7e3556..cc4fa9d 100644
--- a/src/main/java/org/onosproject/yangutils/utils/io/impl/FileSystemUtil.java
+++ b/src/main/java/org/onosproject/yangutils/utils/io/impl/FileSystemUtil.java
@@ -62,8 +62,7 @@
     public static void createPackage(String pkg, String pkgInfo) throws IOException {
         if (!doesPackageExist(new File(pkg))) {
             try {
-                File pack = YangIoUtils
-                        .createDirectories(pkg.replace(UtilConstants.PERIOD, UtilConstants.SLASH));
+                File pack = YangIoUtils.createDirectories(pkg.replace(UtilConstants.PERIOD, UtilConstants.SLASH));
                 YangIoUtils.addPackageInfo(pack, pkgInfo, pkg);
             } catch (IOException e) {
                 throw new IOException("failed to create package-info file");
diff --git a/src/main/java/org/onosproject/yangutils/utils/io/impl/JavaDocGen.java b/src/main/java/org/onosproject/yangutils/utils/io/impl/JavaDocGen.java
index 635acf1..826eb7b 100644
--- a/src/main/java/org/onosproject/yangutils/utils/io/impl/JavaDocGen.java
+++ b/src/main/java/org/onosproject/yangutils/utils/io/impl/JavaDocGen.java
@@ -226,8 +226,8 @@
      */
     private static String generateForConstructors(String className) {
         return (UtilConstants.JAVA_DOC_FIRST_LINE + UtilConstants.FOUR_SPACE_INDENTATION
-                + UtilConstants.JAVA_DOC_SETTERS + className + UtilConstants.PERIOD + UtilConstants.NEW_LINE
-                + UtilConstants.FOUR_SPACE_INDENTATION + UtilConstants.NEW_LINE_ESTRIC
+                + UtilConstants.JAVA_DOC_CONSTRUCTOR + className + UtilConstants.IMPL + UtilConstants.PERIOD
+                + UtilConstants.NEW_LINE + UtilConstants.FOUR_SPACE_INDENTATION + UtilConstants.NEW_LINE_ESTRIC
                 + UtilConstants.FOUR_SPACE_INDENTATION + UtilConstants.JAVA_DOC_PARAM
                 + (className.substring(0, 1).toLowerCase() + className.substring(1)) + UtilConstants.OBJECT
                 + UtilConstants.SPACE + UtilConstants.BUILDER_OBJECT + UtilConstants.SPACE + className
diff --git a/src/main/java/org/onosproject/yangutils/utils/io/impl/SerializedDataStore.java b/src/main/java/org/onosproject/yangutils/utils/io/impl/SerializedDataStore.java
index d33e1fe..d9d3732 100644
--- a/src/main/java/org/onosproject/yangutils/utils/io/impl/SerializedDataStore.java
+++ b/src/main/java/org/onosproject/yangutils/utils/io/impl/SerializedDataStore.java
@@ -27,6 +27,7 @@
 import java.io.ObjectOutput;
 import java.io.ObjectOutputStream;
 import java.io.OutputStream;
+import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -165,7 +166,6 @@
      * @throws IOException when fails to read from the file.
      * @throws ClassNotFoundException when file is missing.
      */
-    @SuppressWarnings("unchecked")
     public static List<String> getSerializeData(SerializedDataStoreType type)
             throws IOException, ClassNotFoundException {
 
@@ -191,10 +191,13 @@
             InputStream buffer = new BufferedInputStream(file);
             ObjectInput input = new ObjectInputStream(buffer);
             try {
-                List<String> recoveredData = (List<String>) input.readObject();
+                String data = (String) input.readObject();
+                List<String> recoveredData = new ArrayList<>();
+                recoveredData.add(data);
                 return recoveredData;
             } finally {
                 input.close();
+                file.close();
             }
         } catch (ClassNotFoundException ex) {
             throw new ClassNotFoundException("failed to fetch the serialized data file.");
diff --git a/src/main/java/org/onosproject/yangutils/utils/io/impl/YangIoUtils.java b/src/main/java/org/onosproject/yangutils/utils/io/impl/YangIoUtils.java
index af83de4..7f394db 100644
--- a/src/main/java/org/onosproject/yangutils/utils/io/impl/YangIoUtils.java
+++ b/src/main/java/org/onosproject/yangutils/utils/io/impl/YangIoUtils.java
@@ -27,6 +27,7 @@
 import org.apache.maven.model.Resource;
 
 import org.onosproject.yangutils.utils.UtilConstants;
+import org.apache.commons.io.FileUtils;
 
 import static org.slf4j.LoggerFactory.getLogger;
 import org.slf4j.Logger;
@@ -102,10 +103,10 @@
                     File currentFile = new File(file);
                     currentFile.delete();
                 }
+                FileUtils.deleteDirectory(generatedDirectory);
             } catch (IOException e) {
                 log.info("Failed to delete the generated files in " + generatedDirectory + " directory");
             }
-            generatedDirectory.delete();
         }
     }