string issue fix for few yang construct like config, mandatory + allowing yang constructs as identifers and string

Change-Id: I8dd01dc60d280a843b0a485681caa6bfcac013c2
diff --git a/src/main/java/org/onosproject/yangutils/parser/impl/listeners/MandatoryListener.java b/src/main/java/org/onosproject/yangutils/parser/impl/listeners/MandatoryListener.java
index ea33cd7..3ca820c 100644
--- a/src/main/java/org/onosproject/yangutils/parser/impl/listeners/MandatoryListener.java
+++ b/src/main/java/org/onosproject/yangutils/parser/impl/listeners/MandatoryListener.java
@@ -22,6 +22,7 @@
 import org.onosproject.yangutils.parser.exceptions.ParserException;
 import org.onosproject.yangutils.parser.impl.TreeWalkListener;
 
+import static org.onosproject.yangutils.parser.impl.parserutils.ListenerUtil.getValidBooleanValue;
 import static org.onosproject.yangutils.utils.YangConstructType.MANDATORY_DATA;
 import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY;
 import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage;
@@ -42,7 +43,8 @@
  *  mandatory-arg       = true-keyword / false-keyword
  *
  * ANTLR grammar rule
- *  mandatoryStatement : MANDATORY_KEYWORD (TRUE_KEYWORD | FALSE_KEYWORD) STMTEND;
+ *  mandatoryStatement : MANDATORY_KEYWORD mandatory STMTEND;
+ *  mandatory          : string;
  */
 
 /**
@@ -71,15 +73,13 @@
         // Check for stack to be non empty.
         checkStackIsNotEmpty(listener, MISSING_HOLDER, MANDATORY_DATA, "", ENTRY);
 
+        boolean isMandatory = getValidBooleanValue(ctx.mandatory().getText(), MANDATORY_DATA, ctx);
+
         Parsable tmpNode = listener.getParsedDataStack().peek();
         switch (tmpNode.getYangConstructType()) {
             case LEAF_DATA:
                 YangLeaf leaf = (YangLeaf) tmpNode;
-                if (ctx.TRUE_KEYWORD() != null) {
-                    leaf.setMandatory(true);
-                } else {
-                    leaf.setMandatory(false);
-                }
+                leaf.setMandatory(isMandatory);
                 break;
             case CHOICE_DATA: // TODO
                 break;