From 6a5f829fd4eaced411fa9d43baca58ecf733002c Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Tue, 18 Jan 2022 09:49:11 +0100 Subject: [PATCH] Disconnect yang-data-util from concepts.Builder The Builder concept is going away, do not use it during XPath parsing. JIRA: YANGTOOLS-1328 Change-Id: I4f9547d38d8786f7b9b771f264f6e941c11fb089 Signed-off-by: Robert Varga --- ...XpathStringParsingPathArgumentBuilder.java | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/XpathStringParsingPathArgumentBuilder.java b/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/XpathStringParsingPathArgumentBuilder.java index d9f2f516b0..11b54ddc1e 100644 --- a/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/XpathStringParsingPathArgumentBuilder.java +++ b/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/XpathStringParsingPathArgumentBuilder.java @@ -15,7 +15,7 @@ import com.google.common.collect.ImmutableMap; import java.util.ArrayList; import java.util.List; import org.eclipse.jdt.annotation.NonNull; -import org.opendaylight.yangtools.concepts.Builder; +import org.opendaylight.yangtools.concepts.Mutable; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.common.QNameModule; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; @@ -34,8 +34,7 @@ import org.opendaylight.yangtools.yang.model.util.SchemaInferenceStack; * is not correctly serialized or does not represent instance identifier valid * for associated schema context. */ -final class XpathStringParsingPathArgumentBuilder implements Builder> { - +final class XpathStringParsingPathArgumentBuilder implements Mutable { /** * Matcher matching WSP YANG ABNF token. */ @@ -74,15 +73,20 @@ final class XpathStringParsingPathArgumentBuilder implements Builder build() { + /** + * Parse input string and return the corresponding list of {@link PathArgument}s. + * + * @return List of PathArguments + * @throws IllegalArgumentException if the input string is not valid + */ + @NonNull List build() { while (!allCharactersConsumed()) { product.add(computeNextArgument()); } -- 2.36.6