From 3ac36577ee73dfcc91fcf3c6a90c4422e9152737 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Tue, 9 Feb 2021 14:33:30 +0100 Subject: [PATCH] Move model.util.RegexUtils These utilities are used only by PatternStatementSupport, move them there to reduce yang-parser-rfc7950 dependencies. JIRA: YANGTOOLS-1052 Change-Id: I3a039c4d96b296e8fd3f71c248221ff9b815997e Signed-off-by: Robert Varga --- .../rfc7950/stmt/pattern/PatternStatementSupport.java | 1 - .../yang/parser/rfc7950/stmt/pattern}/RegexUtils.java | 7 +++---- .../yang/parser/rfc7950/stmt/pattern}/Bug4079Test.java | 2 +- .../yang/parser/rfc7950/stmt/pattern}/Bug5410Test.java | 2 +- 4 files changed, 5 insertions(+), 7 deletions(-) rename yang/{yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util => yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern}/RegexUtils.java (98%) rename yang/{yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util => yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern}/Bug4079Test.java (99%) rename yang/{yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util => yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern}/Bug5410Test.java (99%) diff --git a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern/PatternStatementSupport.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern/PatternStatementSupport.java index 4b9c47e1df..39b4de8cf4 100644 --- a/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern/PatternStatementSupport.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern/PatternStatementSupport.java @@ -21,7 +21,6 @@ import org.opendaylight.yangtools.yang.model.api.stmt.PatternEffectiveStatement; import org.opendaylight.yangtools.yang.model.api.stmt.PatternExpression; import org.opendaylight.yangtools.yang.model.api.stmt.PatternStatement; import org.opendaylight.yangtools.yang.model.spi.stmt.DeclaredStatements; -import org.opendaylight.yangtools.yang.model.util.RegexUtils; import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport; import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current; import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext; diff --git a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/RegexUtils.java b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern/RegexUtils.java similarity index 98% rename from yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/RegexUtils.java rename to yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern/RegexUtils.java index 03ae39bc5d..2da907a189 100644 --- a/yang/yang-model-util/src/main/java/org/opendaylight/yangtools/yang/model/util/RegexUtils.java +++ b/yang/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern/RegexUtils.java @@ -5,8 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ - -package org.opendaylight.yangtools.yang.model.util; +package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.pattern; import com.google.common.collect.ImmutableSet; import java.util.regex.Matcher; @@ -18,7 +17,7 @@ import org.slf4j.LoggerFactory; /** * Utilities for converting YANG XSD regexes into Java-compatible regexes. */ -public final class RegexUtils { +final class RegexUtils { private static final Logger LOG = LoggerFactory.getLogger(RegexUtils.class); private static final Pattern BETWEEN_CURLY_BRACES_PATTERN = Pattern.compile("\\{(.+?)\\}"); private static final ImmutableSet JAVA_UNICODE_BLOCKS = ImmutableSet.builder() @@ -244,7 +243,7 @@ public final class RegexUtils { * @param xsdRegex XSD regex pattern as it is defined in a YANG source * @return Java-compatible regex */ - public static String getJavaRegexFromXSD(final String xsdRegex) { + static String getJavaRegexFromXSD(final String xsdRegex) { // Note: we are using a non-capturing group to deal with internal structure issues, like branches and similar. return "^(?:" + fixUnicodeScriptPattern(escapeChars(xsdRegex)) + ")$"; } diff --git a/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/Bug4079Test.java b/yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern/Bug4079Test.java similarity index 99% rename from yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/Bug4079Test.java rename to yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern/Bug4079Test.java index d41d8e3bd0..8c7ad491c1 100644 --- a/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/Bug4079Test.java +++ b/yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern/Bug4079Test.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.model.util; +package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.pattern; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; diff --git a/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/Bug5410Test.java b/yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern/Bug5410Test.java similarity index 99% rename from yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/Bug5410Test.java rename to yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern/Bug5410Test.java index 50f27f9f61..0fc042737f 100644 --- a/yang/yang-model-util/src/test/java/org/opendaylight/yangtools/yang/model/util/Bug5410Test.java +++ b/yang/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/pattern/Bug5410Test.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.model.util; +package org.opendaylight.yangtools.yang.parser.rfc7950.stmt.pattern; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; -- 2.36.6