From: Robert Varga Date: Tue, 18 Jan 2022 08:49:11 +0000 (+0100) Subject: Disconnect yang-data-util from concepts.Builder X-Git-Tag: v8.0.0~68 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=yangtools.git;a=commitdiff_plain;h=6a5f829fd4eaced411fa9d43baca58ecf733002c 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 --- 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()); }