X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=model%2Fyang-model-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fmodel%2Fapi%2FDataNodeContainer.java;h=27d3f18fed3552a41f87cc3a995288ecdcf2194a;hb=32aeb53bf28c97c1a47b8e5c4eb2f211fdc92c58;hp=8d44da96c25bb8be5035d8ad54901e81c9c307c4;hpb=95a363772d8bfa2fcf11cedd61c45c149de144e3;p=yangtools.git diff --git a/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/DataNodeContainer.java b/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/DataNodeContainer.java index 8d44da96c2..27d3f18fed 100644 --- a/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/DataNodeContainer.java +++ b/model/yang-model-api/src/main/java/org/opendaylight/yangtools/yang/model/api/DataNodeContainer.java @@ -147,7 +147,7 @@ public interface DataNodeContainer { default Optional findDataTreeChild(final QName name) { // First we try to find a direct child and check if it is a data node (as per RFC7950) final Optional optDataChild = findDataChildByName(name); - if (HelperMethods.isDataNode(optDataChild)) { + if (isDataNode(optDataChild)) { return optDataChild; } @@ -207,4 +207,14 @@ public interface DataNodeContainer { parent = (DataNodeContainer) child; } while (true); } + + private static boolean isDataNode(final Optional optNode) { + return optNode.isPresent() && isDataNode(optNode.orElseThrow()); + } + + private static boolean isDataNode(final DataSchemaNode node) { + return node instanceof ContainerSchemaNode || node instanceof LeafSchemaNode + || node instanceof LeafListSchemaNode || node instanceof ListSchemaNode + || node instanceof AnydataSchemaNode || node instanceof AnyxmlSchemaNode; + } }