From 02bb1f099d8f4838b55f5e8d2d30d37ea40bea63 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Tue, 3 May 2022 16:43:32 +0200 Subject: [PATCH] Print out available augmentations We seem to be facing a weird failure to look up augmentations, make sure we report what is available. Change-Id: Ifd9d27175bc90abfbba1a5e60935dc41cb01fc16 Signed-off-by: Robert Varga (cherry picked from commit dc3e4b5e8be164fd0c5332828c7d7a629f388a46) --- .../api/schema/stream/YangInstanceIdentifierWriter.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/stream/YangInstanceIdentifierWriter.java b/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/stream/YangInstanceIdentifierWriter.java index 37c0b03353..03588ede79 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/stream/YangInstanceIdentifierWriter.java +++ b/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/stream/YangInstanceIdentifierWriter.java @@ -9,6 +9,7 @@ package org.opendaylight.yangtools.yang.data.api.schema.stream; import static java.util.Objects.requireNonNull; +import com.google.common.collect.Collections2; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; @@ -257,12 +258,14 @@ public final class YangInstanceIdentifierWriter implements AutoCloseable { private static AugmentationSchemaNode enterAugmentation(final AugmentationTarget target, final AugmentationIdentifier id) throws IOException { - for (var augment : target.getAvailableAugmentations()) { + final var augs = target.getAvailableAugmentations(); + for (var augment : augs) { if (id.equals(augmentationIdentifierFrom(augment))) { return augment; } } - throw new IOException("Cannot find augmentation " + id + " in " + target); + throw new IOException("Cannot find augmentation " + id + " in " + target + ", available: " + + Collections2.transform(augs, YangInstanceIdentifierWriter::augmentationIdentifierFrom)); } // FIXME: duplicate of data.util.DataSchemaContextNode.augmentationIdentifierFrom() -- 2.36.6