Add parser support for non-strict schema lookup.
[yangtools.git] / yang / yang-data-impl / src / main / java / org / opendaylight / yangtools / yang / data / impl / schema / transform / base / parser / BaseDispatcherParser.java
index fba872d2f7fc1d29049549447669b9c73a30a14f..a594e5d763a8dbe51c8a33fd03d808b97d605d97 100644 (file)
@@ -109,6 +109,10 @@ public abstract class BaseDispatcherParser<E, N extends DataContainerNode<?>, S>
         // process Child nodes
         for (QName childPartialQName : mappedChildElements.keySet()) {
             DataSchemaNode childSchema = getSchemaForChild(schema, childPartialQName);
+            //with strict parsing an exception would be already thrown, with nonstrict we want to ignore this node
+            if (childSchema == null) {
+                continue;
+            }
             List<E> childrenForQName = mappedChildElements.get(childPartialQName);
 
             // Augment
@@ -153,6 +157,10 @@ public abstract class BaseDispatcherParser<E, N extends DataContainerNode<?>, S>
         return Collections.emptyMap();
     }
 
+    protected boolean strictParsing() {
+        return true;
+    }
+
     private boolean isMarkedAs(final Map<QName, ?> mappedAugmentChildNodes, final QName qName) {
         return mappedAugmentChildNodes.containsKey(qName);
     }