[ONOS-4650][ONOS-4726][ONOS-4727] [ONOS-4728]Implement must parser + when parser + feature + if-feature + revision defect fix

Change-Id: I0a3aee6c1c6b72ef7da7f7f565fd0f149fe3fd42
diff --git a/utils/yangutils/datamodel/src/main/java/org/onosproject/yangutils/datamodel/YangNotification.java b/utils/yangutils/datamodel/src/main/java/org/onosproject/yangutils/datamodel/YangNotification.java
index 6fba390..62ee584 100644
--- a/utils/yangutils/datamodel/src/main/java/org/onosproject/yangutils/datamodel/YangNotification.java
+++ b/utils/yangutils/datamodel/src/main/java/org/onosproject/yangutils/datamodel/YangNotification.java
@@ -60,7 +60,7 @@
  *      | container    | 7.5     | 0..n        | -child nodes     |
  *      | description  | 7.19.3  | 0..1        | -string          |
  *      | grouping     | 7.11    | 0..n        | -child nodes     |
- *      | if-feature   | 7.18.2  | 0..n        | -TODO            |
+ *      | if-feature   | 7.18.2  | 0..n        | -YangIfFeature   |
  *      | leaf         | 7.6     | 0..n        | -YangLeaf        |
  *      | leaf-list    | 7.7     | 0..n        | -YangLeafList    |
  *      | list         | 7.8     | 0..n        | -child nodes     |
@@ -76,7 +76,8 @@
  */
 public class YangNotification
         extends YangNode
-        implements YangLeavesHolder, YangCommonInfo, Parsable, CollisionDetector, YangAugmentationHolder {
+        implements YangLeavesHolder, YangCommonInfo, Parsable, CollisionDetector, YangAugmentationHolder,
+        YangIfFeatureHolder {
 
     private static final long serialVersionUID = 806201611L;
 
@@ -111,6 +112,11 @@
     private YangStatusType status = YangStatusType.CURRENT;
 
     /**
+     * List of if-feature.
+     */
+    private List<YangIfFeature> ifFeatureList;
+
+    /**
      * Create a notification node.
      */
     public YangNotification() {
@@ -221,4 +227,22 @@
     public void setStatus(YangStatusType status) {
         this.status = status;
     }
+
+    @Override
+    public List<YangIfFeature> getIfFeatureList() {
+        return ifFeatureList;
+    }
+
+    @Override
+    public void addIfFeatureList(YangIfFeature ifFeature) {
+        if (getIfFeatureList() == null) {
+            setIfFeatureList(new LinkedList<>());
+        }
+        getIfFeatureList().add(ifFeature);
+    }
+
+    @Override
+    public void setIfFeatureList(List<YangIfFeature> ifFeatureList) {
+        this.ifFeatureList = ifFeatureList;
+    }
 }