[ONOS-5611] [ONOS-5605] defect fix
Change-Id: I5ddeea19b3e71a320708ee83964ce2e721315553
diff --git a/datamodel/src/main/java/org/onosproject/yangutils/datamodel/YangImport.java b/datamodel/src/main/java/org/onosproject/yangutils/datamodel/YangImport.java
index b60f742..b0d9f9e 100644
--- a/datamodel/src/main/java/org/onosproject/yangutils/datamodel/YangImport.java
+++ b/datamodel/src/main/java/org/onosproject/yangutils/datamodel/YangImport.java
@@ -246,7 +246,9 @@
return;
}
// Match revision if import is with revision.
- if (((YangModule) moduleNode).getRevision().getRevDate().equals(importedModuleRevision)) {
+ if (moduleNode.getRevision() != null && (moduleNode
+ .getRevision().getRevDate()
+ .equals(importedModuleRevision))) {
setImportedNode(moduleNode);
return;
}
diff --git a/datamodel/src/main/java/org/onosproject/yangutils/datamodel/YangInclude.java b/datamodel/src/main/java/org/onosproject/yangutils/datamodel/YangInclude.java
index 68c093c..3be5d7b 100644
--- a/datamodel/src/main/java/org/onosproject/yangutils/datamodel/YangInclude.java
+++ b/datamodel/src/main/java/org/onosproject/yangutils/datamodel/YangInclude.java
@@ -183,8 +183,11 @@
setIncludedNode(subModuleNode);
return (YangSubModule) subModuleNode;
}
+
// Match revision if inclusion is with revision.
- if (((YangSubModule) subModuleNode).getRevision().getRevDate().equals(includedSubModuleRevision)) {
+ if (subModuleNode.getRevision() != null && subModuleNode
+ .getRevision().getRevDate()
+ .equals(includedSubModuleRevision)) {
setIncludedNode(subModuleNode);
return (YangSubModule) subModuleNode;
}
diff --git a/parser/src/main/java/org/onosproject/yangutils/parser/impl/listeners/ShortCaseListener.java b/parser/src/main/java/org/onosproject/yangutils/parser/impl/listeners/ShortCaseListener.java
index 6963a98..8dbd41d 100644
--- a/parser/src/main/java/org/onosproject/yangutils/parser/impl/listeners/ShortCaseListener.java
+++ b/parser/src/main/java/org/onosproject/yangutils/parser/impl/listeners/ShortCaseListener.java
@@ -101,6 +101,9 @@
} else if (ctx.leafStatement() != null) {
caseNode.setName(getValidIdentifier(ctx.leafStatement().identifier().getText(), CASE_DATA, ctx));
errorConstructContext = ctx.leafStatement();
+ } else if (ctx.anyxmlStatement() != null) {
+ // Anyxml statement is not supported
+ return;
} else {
throw new ParserException(constructListenerErrorMessage(INVALID_CHILD, SHORT_CASE_DATA, "", ENTRY));
}
@@ -141,6 +144,9 @@
if (listener.getParsedDataStack().peek() instanceof YangCase) {
listener.getParsedDataStack().pop();
+ } else if (ctx.anyxmlStatement() != null) {
+ // Anyxml statement is not supported
+ return;
} else {
throw new ParserException(constructListenerErrorMessage(MISSING_CURRENT_HOLDER, SHORT_CASE_DATA,
"", EXIT));