[ONOS-3902, ONOS-3903, ONOS-3904] string type, integer type derrived type

Change-Id: I8279e93fcb7dfb82491cc09057c9d75165add68d
diff --git a/utils/yangutils/src/main/java/org/onosproject/yangutils/datamodel/YangContainer.java b/utils/yangutils/src/main/java/org/onosproject/yangutils/datamodel/YangContainer.java
index 62a589a..7957a1a 100644
--- a/utils/yangutils/src/main/java/org/onosproject/yangutils/datamodel/YangContainer.java
+++ b/utils/yangutils/src/main/java/org/onosproject/yangutils/datamodel/YangContainer.java
@@ -109,12 +109,12 @@
     /**
      * List of leaves contained.
      */
-    private List<YangLeaf<?>> listOfLeaf;
+    private List<YangLeaf> listOfLeaf;
 
     /**
      * List of leaf-lists contained.
      */
-    private List<YangLeafList<?>> listOfLeafList;
+    private List<YangLeafList> listOfLeafList;
 
     /**
      * If it is a presence container, then the textual documentation of presence
@@ -130,7 +130,7 @@
     /**
      * Status of the node.
      */
-    private YangStatusType status;
+    private YangStatusType status = YangStatusType.CURRENT;
 
     /**
      * Package of the generated java code.
@@ -149,16 +149,20 @@
         super(YangNodeType.CONTAINER_NODE);
     }
 
-    /* (non-Javadoc)
-     * @see org.onosproject.yangutils.datamodel.YangNode#getName()
+    /**
+     * Get the YANG name of container.
+     *
+     * @return the name of container as defined in YANG file.
      */
     @Override
     public String getName() {
         return name;
     }
 
-    /* (non-Javadoc)
-     * @see org.onosproject.yangutils.datamodel.YangNode#setName(java.lang.String)
+    /**
+     * Set the YANG name of container.
+     *
+     * @param name the name of container as defined in YANG file.
      */
     @Override
     public void setName(String name) {
@@ -209,7 +213,7 @@
      * @return the list of leaves.
      */
     @Override
-    public List<YangLeaf<?>> getListOfLeaf() {
+    public List<YangLeaf> getListOfLeaf() {
         return listOfLeaf;
     }
 
@@ -218,7 +222,7 @@
      *
      * @param leafsList the list of leaf to set.
      */
-    private void setListOfLeaf(List<YangLeaf<?>> leafsList) {
+    private void setListOfLeaf(List<YangLeaf> leafsList) {
         listOfLeaf = leafsList;
     }
 
@@ -228,9 +232,9 @@
      * @param leaf the leaf to be added.
      */
     @Override
-    public void addLeaf(YangLeaf<?> leaf) {
+    public void addLeaf(YangLeaf leaf) {
         if (getListOfLeaf() == null) {
-            setListOfLeaf(new LinkedList<YangLeaf<?>>());
+            setListOfLeaf(new LinkedList<YangLeaf>());
         }
 
         getListOfLeaf().add(leaf);
@@ -242,7 +246,7 @@
      * @return the list of leaf-list.
      */
     @Override
-    public List<YangLeafList<?>> getListOfLeafList() {
+    public List<YangLeafList> getListOfLeafList() {
         return listOfLeafList;
     }
 
@@ -251,7 +255,7 @@
      *
      * @param listOfLeafList the list of leaf-list to set.
      */
-    private void setListOfLeafList(List<YangLeafList<?>> listOfLeafList) {
+    private void setListOfLeafList(List<YangLeafList> listOfLeafList) {
         this.listOfLeafList = listOfLeafList;
     }
 
@@ -261,9 +265,9 @@
      * @param leafList the leaf-list to be added.
      */
     @Override
-    public void addLeafList(YangLeafList<?> leafList) {
+    public void addLeafList(YangLeafList leafList) {
         if (getListOfLeafList() == null) {
-            setListOfLeafList(new LinkedList<YangLeafList<?>>());
+            setListOfLeafList(new LinkedList<YangLeafList>());
         }
 
         getListOfLeafList().add(leafList);
@@ -397,6 +401,11 @@
         pkg = pcg;
     }
 
+    /**
+     * Generate the java code corresponding to YANG container.
+     *
+     * @throws IOException when fails to generate the source files.
+     */
     @Override
     public void generateJavaCodeEntry() throws IOException {
         YangNode parent = getParent();
@@ -416,8 +425,6 @@
 
     /**
      * Adds current node attribute to parent file.
-     *
-     * @param pkg java file package path
      */
     private void addAttributeInParent() {
         if (getParent() != null) {
@@ -439,9 +446,9 @@
      */
     private void addLeavesAttributes() {
 
-        List<YangLeaf<?>> leaves = getListOfLeaf();
+        List<YangLeaf> leaves = getListOfLeaf();
         if (leaves != null) {
-            for (YangLeaf<?> leaf : leaves) {
+            for (YangLeaf leaf : leaves) {
                 getFileHandle().addAttributeInfo(leaf.getDataType(), leaf.getLeafName(), false);
             }
         }
@@ -451,9 +458,9 @@
      * Adds leaf list's attributes in generated files.
      */
     private void addLeafListAttributes() {
-        List<YangLeafList<?>> leavesList = getListOfLeafList();
+        List<YangLeafList> leavesList = getListOfLeafList();
         if (leavesList != null) {
-            for (YangLeafList<?> leafList : leavesList) {
+            for (YangLeafList leafList : leavesList) {
                 getFileHandle().addAttributeInfo(leafList.getDataType(), leafList.getLeafName(), true);
             }
         }