From 9f222e9d2a78de37aa37da277e24ff962a9c7196 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Sat, 20 May 2023 12:45:50 +0200 Subject: [PATCH] Move MountPointLabel to yang-common We have YangDataName in yang-common, MountPointLabel is very similar. Co-locate them for sharing. Change-Id: I4e3747f5ee4b0dd68f3f83dbb9df58e165313383 Signed-off-by: Robert Varga --- codec/yang-data-codec-gson/pom.xml | 4 --- .../gson/JSONNormalizedNodeStreamWriter.java | 2 +- .../yang/common}/MountPointLabel.java | 33 ++++++++----------- data/yang-data-api/pom.xml | 4 --- .../src/main/java/module-info.java | 1 - .../api/schema/EmptyMountPointContext.java | 2 +- .../data/api/schema/MountPointContext.java | 2 +- .../data/api/schema/NormalizedMountPoint.java | 2 +- .../stream/NormalizedNodeStreamWriter.java | 2 +- data/yang-data-impl/pom.xml | 4 --- ...eMountPointNormalizedNodeStreamWriter.java | 2 +- .../schema/ImmutableNormalizedMountPoint.java | 2 +- .../src/main/java/module-info.java | 1 + ...stractDynamicMountPointContextFactory.java | 2 +- .../AbstractMountPointContextFactory.java | 6 ++-- .../AbstractMountPointDataWithSchema.java | 2 +- .../data/util/ImmutableMountPointContext.java | 2 +- .../yang/data/util/MountPointData.java | 2 +- model/rfc8528-model-api/pom.xml | 4 --- .../api/MountPointEffectiveStatement.java | 1 + .../model/api/MountPointStatement.java | 1 + .../MountPointEffectiveStatementImpl.java | 2 +- .../parser/MountPointStatementImpl.java | 2 +- .../parser/MountPointStatementSupport.java | 6 ++-- .../parser/RefMountPointStatement.java | 2 +- 25 files changed, 37 insertions(+), 56 deletions(-) rename {model/rfc8528-model-api/src/main/java/org/opendaylight/yangtools/rfc8528/model/api => common/yang-common/src/main/java/org/opendaylight/yangtools/yang/common}/MountPointLabel.java (55%) diff --git a/codec/yang-data-codec-gson/pom.xml b/codec/yang-data-codec-gson/pom.xml index 211a7e21c8..8f624fd8eb 100644 --- a/codec/yang-data-codec-gson/pom.xml +++ b/codec/yang-data-codec-gson/pom.xml @@ -54,10 +54,6 @@ org.opendaylight.yangtools yang-model-api - - org.opendaylight.yangtools - rfc8528-model-api - org.opendaylight.yangtools yang-model-util diff --git a/codec/yang-data-codec-gson/src/main/java/org/opendaylight/yangtools/yang/data/codec/gson/JSONNormalizedNodeStreamWriter.java b/codec/yang-data-codec-gson/src/main/java/org/opendaylight/yangtools/yang/data/codec/gson/JSONNormalizedNodeStreamWriter.java index 0655c6c78f..535ff6ee37 100644 --- a/codec/yang-data-codec-gson/src/main/java/org/opendaylight/yangtools/yang/data/codec/gson/JSONNormalizedNodeStreamWriter.java +++ b/codec/yang-data-codec-gson/src/main/java/org/opendaylight/yangtools/yang/data/codec/gson/JSONNormalizedNodeStreamWriter.java @@ -20,7 +20,7 @@ import java.util.regex.Pattern; import javax.xml.transform.dom.DOMSource; import org.checkerframework.checker.regex.qual.Regex; import org.eclipse.jdt.annotation.Nullable; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.common.XMLNamespace; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; diff --git a/model/rfc8528-model-api/src/main/java/org/opendaylight/yangtools/rfc8528/model/api/MountPointLabel.java b/common/yang-common/src/main/java/org/opendaylight/yangtools/yang/common/MountPointLabel.java similarity index 55% rename from model/rfc8528-model-api/src/main/java/org/opendaylight/yangtools/rfc8528/model/api/MountPointLabel.java rename to common/yang-common/src/main/java/org/opendaylight/yangtools/yang/common/MountPointLabel.java index 72e42fdd9b..2976042104 100644 --- a/model/rfc8528-model-api/src/main/java/org/opendaylight/yangtools/rfc8528/model/api/MountPointLabel.java +++ b/common/yang-common/src/main/java/org/opendaylight/yangtools/yang/common/MountPointLabel.java @@ -5,47 +5,42 @@ * 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.rfc8528.model.api; +package org.opendaylight.yangtools.yang.common; import static java.util.Objects.requireNonNull; -import com.google.common.annotations.Beta; -import com.google.common.cache.CacheBuilder; -import com.google.common.cache.CacheLoader; -import com.google.common.cache.LoadingCache; +import com.google.common.collect.Interner; +import com.google.common.collect.Interners; import java.io.DataInput; import java.io.DataOutput; import java.io.IOException; import org.eclipse.jdt.annotation.NonNullByDefault; import org.opendaylight.yangtools.concepts.Identifier; import org.opendaylight.yangtools.concepts.WritableObject; -import org.opendaylight.yangtools.yang.common.QName; -@Beta @NonNullByDefault public record MountPointLabel(QName qname) implements Identifier, WritableObject { @java.io.Serial private static final long serialVersionUID = 1L; - - private static final LoadingCache CACHE = CacheBuilder.newBuilder().weakValues() - .build(new CacheLoader() { - @Override - public MountPointLabel load(final QName key) { - return new MountPointLabel(key); - } - }); + private static final Interner INTERNER = Interners.newWeakInterner(); public MountPointLabel { requireNonNull(qname); } - public static MountPointLabel create(final QName qname) { - final var existing = CACHE.getIfPresent(qname); - return existing != null ? existing : CACHE.getUnchecked(qname.intern()); + public MountPointLabel intern() { + final var cacheQName = qname.intern(); + + // Identity comparison is here on purpose, as we are deciding whether to potentially store 'qname'. It is + // important that it does not hold user-supplied reference (such a String instance from parsing of an XML + // document). + final var template = cacheQName == qname ? this : new MountPointLabel(cacheQName); + + return INTERNER.intern(template); } public static MountPointLabel readFrom(final DataInput in) throws IOException { - return create(QName.readFrom(in)); + return new MountPointLabel(QName.readFrom(in)); } @Override diff --git a/data/yang-data-api/pom.xml b/data/yang-data-api/pom.xml index bc7f6527eb..824657385f 100644 --- a/data/yang-data-api/pom.xml +++ b/data/yang-data-api/pom.xml @@ -51,10 +51,6 @@ org.opendaylight.yangtools yang-model-spi - - org.opendaylight.yangtools - rfc8528-model-api - org.opendaylight.yangtools diff --git a/data/yang-data-api/src/main/java/module-info.java b/data/yang-data-api/src/main/java/module-info.java index 5bdecabaa6..177ce87464 100644 --- a/data/yang-data-api/src/main/java/module-info.java +++ b/data/yang-data-api/src/main/java/module-info.java @@ -19,7 +19,6 @@ module org.opendaylight.yangtools.yang.data.api { requires transitive org.opendaylight.yangtools.util; requires transitive org.opendaylight.yangtools.yang.common; requires transitive org.opendaylight.yangtools.yang.model.api; - requires transitive org.opendaylight.yangtools.rfc8528.model.api; requires org.opendaylight.yangtools.yang.model.spi; requires org.slf4j; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/EmptyMountPointContext.java b/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/EmptyMountPointContext.java index 550e5d372b..33a33a52cd 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/EmptyMountPointContext.java +++ b/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/EmptyMountPointContext.java @@ -8,7 +8,7 @@ package org.opendaylight.yangtools.yang.data.api.schema; import java.util.Optional; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.model.spi.AbstractEffectiveModelContextProvider; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/MountPointContext.java b/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/MountPointContext.java index 4bd58cb94f..0086d8730f 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/MountPointContext.java +++ b/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/MountPointContext.java @@ -9,7 +9,7 @@ package org.opendaylight.yangtools.yang.data.api.schema; import java.util.Optional; import org.eclipse.jdt.annotation.NonNull; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContextProvider; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/NormalizedMountPoint.java b/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/NormalizedMountPoint.java index a2a757d2fb..ffc3a67d31 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/NormalizedMountPoint.java +++ b/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/NormalizedMountPoint.java @@ -8,7 +8,7 @@ package org.opendaylight.yangtools.yang.data.api.schema; import org.eclipse.jdt.annotation.NonNullByDefault; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; +import org.opendaylight.yangtools.yang.common.MountPointLabel; /** * Normalized representation of a YANG mount point. This is a {@link NormalizedTuple}, with a {@link #label()} and the diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/stream/NormalizedNodeStreamWriter.java b/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/stream/NormalizedNodeStreamWriter.java index de28184832..8d35cce11d 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/stream/NormalizedNodeStreamWriter.java +++ b/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/stream/NormalizedNodeStreamWriter.java @@ -19,7 +19,7 @@ import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.NonNullByDefault; import org.opendaylight.yangtools.concepts.ExtensibleObject; import org.opendaylight.yangtools.concepts.ObjectExtension; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; diff --git a/data/yang-data-impl/pom.xml b/data/yang-data-impl/pom.xml index 306b3f39b8..7e343d2c15 100644 --- a/data/yang-data-impl/pom.xml +++ b/data/yang-data-impl/pom.xml @@ -76,10 +76,6 @@ org.opendaylight.yangtools yang-model-util - - org.opendaylight.yangtools - rfc8528-model-api - org.xmlunit diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/ImmutableMountPointNormalizedNodeStreamWriter.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/ImmutableMountPointNormalizedNodeStreamWriter.java index 5bf0b1d879..572435c02a 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/ImmutableMountPointNormalizedNodeStreamWriter.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/ImmutableMountPointNormalizedNodeStreamWriter.java @@ -16,7 +16,7 @@ import java.util.ArrayDeque; import java.util.Deque; import java.util.List; import org.eclipse.jdt.annotation.NonNullByDefault; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.MountPointContext; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/ImmutableNormalizedMountPoint.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/ImmutableNormalizedMountPoint.java index 1ade91ec58..1d0375721c 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/ImmutableNormalizedMountPoint.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/ImmutableNormalizedMountPoint.java @@ -11,7 +11,7 @@ import static java.util.Objects.requireNonNull; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.MountPointContext; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedMetadata; diff --git a/data/yang-data-util/src/main/java/module-info.java b/data/yang-data-util/src/main/java/module-info.java index 03389fa3a6..b57acd49b6 100644 --- a/data/yang-data-util/src/main/java/module-info.java +++ b/data/yang-data-util/src/main/java/module-info.java @@ -20,6 +20,7 @@ module org.opendaylight.yangtools.yang.data.util { requires java.xml; requires org.opendaylight.yangtools.util; + requires org.opendaylight.yangtools.rfc8528.model.api; requires org.slf4j; // Annotations diff --git a/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/AbstractDynamicMountPointContextFactory.java b/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/AbstractDynamicMountPointContextFactory.java index a67cf02e00..d62cc49903 100644 --- a/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/AbstractDynamicMountPointContextFactory.java +++ b/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/AbstractDynamicMountPointContextFactory.java @@ -14,7 +14,7 @@ import java.util.Map.Entry; import java.util.Optional; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.concepts.AbstractSimpleIdentifiable; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.MountPointChild; import org.opendaylight.yangtools.yang.data.api.schema.MountPointContext; diff --git a/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/AbstractMountPointContextFactory.java b/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/AbstractMountPointContextFactory.java index 5344fb1ec8..c70c49469c 100644 --- a/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/AbstractMountPointContextFactory.java +++ b/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/AbstractMountPointContextFactory.java @@ -16,8 +16,8 @@ import java.util.Iterator; import java.util.stream.Collectors; import org.eclipse.jdt.annotation.NonNullByDefault; import org.opendaylight.yangtools.concepts.Immutable; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; import org.opendaylight.yangtools.rfc8528.model.api.SchemaMountConstants; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.common.QNameModule; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; @@ -103,12 +103,12 @@ public abstract class AbstractMountPointContextFactory extends AbstractDynamicMo final QNameModule module = it.next().getQNameModule(); return new MountPointDefinition( - MountPointLabel.create(QName.create(module, entry.findChildByArg(LABEL).map(lbl -> { + new MountPointLabel(QName.create(module, entry.findChildByArg(LABEL).map(lbl -> { checkArgument(lbl instanceof LeafNode, "Unexpected label leaf %s", lbl); final Object value = lbl.body(); checkArgument(value instanceof String, "Unexpected label leaf value %s", value); return (String) value; - }).orElseThrow(() -> new IllegalArgumentException("Mount module missing in " + entry)))), + }).orElseThrow(() -> new IllegalArgumentException("Mount module missing in " + entry)))).intern(), entry.findChildByArg(CONFIG).map(cfg -> { checkArgument(cfg instanceof LeafNode, "Unexpected config leaf %s", cfg); final Object value = cfg.body(); diff --git a/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/AbstractMountPointDataWithSchema.java b/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/AbstractMountPointDataWithSchema.java index 0ed63fd414..eeedcbbc4d 100644 --- a/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/AbstractMountPointDataWithSchema.java +++ b/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/AbstractMountPointDataWithSchema.java @@ -11,7 +11,7 @@ import static com.google.common.base.Preconditions.checkState; import com.google.common.annotations.Beta; import java.io.IOException; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.data.api.schema.MountPointContextFactory; import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter; import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter.MetadataExtension; diff --git a/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/ImmutableMountPointContext.java b/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/ImmutableMountPointContext.java index 9891326b17..671d2f4075 100644 --- a/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/ImmutableMountPointContext.java +++ b/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/ImmutableMountPointContext.java @@ -15,7 +15,7 @@ import com.google.common.collect.Maps; import java.util.Optional; import java.util.function.Function; import org.opendaylight.yangtools.concepts.Immutable; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.data.api.schema.MountPointContext; import org.opendaylight.yangtools.yang.data.api.schema.MountPointContextFactory; import org.opendaylight.yangtools.yang.data.util.AbstractMountPointContextFactory.MountPointDefinition; diff --git a/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/MountPointData.java b/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/MountPointData.java index 0a7f9e0ab0..ce6507b631 100644 --- a/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/MountPointData.java +++ b/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/MountPointData.java @@ -18,7 +18,7 @@ import java.util.List; import java.util.Map; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.concepts.AbstractSimpleIdentifiable; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.data.api.schema.MountPointChild; import org.opendaylight.yangtools.yang.data.api.schema.MountPointContext; import org.opendaylight.yangtools.yang.data.api.schema.MountPointContextFactory; diff --git a/model/rfc8528-model-api/pom.xml b/model/rfc8528-model-api/pom.xml index 23ccbc70db..54d0f3faeb 100644 --- a/model/rfc8528-model-api/pom.xml +++ b/model/rfc8528-model-api/pom.xml @@ -26,10 +26,6 @@ com.google.guava guava - - org.opendaylight.yangtools - concepts - org.opendaylight.yangtools yang-common diff --git a/model/rfc8528-model-api/src/main/java/org/opendaylight/yangtools/rfc8528/model/api/MountPointEffectiveStatement.java b/model/rfc8528-model-api/src/main/java/org/opendaylight/yangtools/rfc8528/model/api/MountPointEffectiveStatement.java index 807fa28f67..67eff0ae20 100644 --- a/model/rfc8528-model-api/src/main/java/org/opendaylight/yangtools/rfc8528/model/api/MountPointEffectiveStatement.java +++ b/model/rfc8528-model-api/src/main/java/org/opendaylight/yangtools/rfc8528/model/api/MountPointEffectiveStatement.java @@ -8,6 +8,7 @@ package org.opendaylight.yangtools.rfc8528.model.api; import com.google.common.annotations.Beta; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition; import org.opendaylight.yangtools.yang.model.api.stmt.UnknownEffectiveStatement; diff --git a/model/rfc8528-model-api/src/main/java/org/opendaylight/yangtools/rfc8528/model/api/MountPointStatement.java b/model/rfc8528-model-api/src/main/java/org/opendaylight/yangtools/rfc8528/model/api/MountPointStatement.java index 97aa2d9c8d..0ae1407a2c 100644 --- a/model/rfc8528-model-api/src/main/java/org/opendaylight/yangtools/rfc8528/model/api/MountPointStatement.java +++ b/model/rfc8528-model-api/src/main/java/org/opendaylight/yangtools/rfc8528/model/api/MountPointStatement.java @@ -8,6 +8,7 @@ package org.opendaylight.yangtools.rfc8528.model.api; import com.google.common.annotations.Beta; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition; import org.opendaylight.yangtools.yang.model.api.stmt.ConfigStatementAwareDeclaredStatement; import org.opendaylight.yangtools.yang.model.api.stmt.DocumentedDeclaredStatement.WithStatus; diff --git a/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointEffectiveStatementImpl.java b/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointEffectiveStatementImpl.java index b970fbf751..f253952cc3 100644 --- a/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointEffectiveStatementImpl.java +++ b/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointEffectiveStatementImpl.java @@ -9,9 +9,9 @@ package org.opendaylight.yangtools.rfc8528.parser; import com.google.common.collect.ImmutableList; import org.opendaylight.yangtools.rfc8528.model.api.MountPointEffectiveStatement; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; import org.opendaylight.yangtools.rfc8528.model.api.MountPointSchemaNode; import org.opendaylight.yangtools.rfc8528.model.api.MountPointStatement; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement; import org.opendaylight.yangtools.yang.model.spi.meta.AbstractEffectiveUnknownSchmemaNode; diff --git a/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointStatementImpl.java b/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointStatementImpl.java index 486086db9f..9dcfa6d545 100644 --- a/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointStatementImpl.java +++ b/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointStatementImpl.java @@ -11,8 +11,8 @@ import static java.util.Objects.requireNonNull; import com.google.common.collect.ImmutableList; import org.eclipse.jdt.annotation.NonNull; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; import org.opendaylight.yangtools.rfc8528.model.api.MountPointStatement; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.model.api.meta.DeclaredStatement; import org.opendaylight.yangtools.yang.model.spi.meta.AbstractDeclaredStatement; diff --git a/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointStatementSupport.java b/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointStatementSupport.java index b3106e2267..7d58dc711e 100644 --- a/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointStatementSupport.java +++ b/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/MountPointStatementSupport.java @@ -9,9 +9,9 @@ package org.opendaylight.yangtools.rfc8528.parser; import com.google.common.collect.ImmutableList; import org.opendaylight.yangtools.rfc8528.model.api.MountPointEffectiveStatement; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; import org.opendaylight.yangtools.rfc8528.model.api.MountPointStatement; import org.opendaylight.yangtools.rfc8528.model.api.SchemaMountStatements; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.common.QNameModule; import org.opendaylight.yangtools.yang.model.api.YangStmtMapping; import org.opendaylight.yangtools.yang.model.api.meta.DeclarationReference; @@ -53,14 +53,14 @@ public final class MountPointStatementSupport // We are not doing exactly that, in that we can end up rebinding the argument through 'augment', I think. @Override public MountPointLabel parseArgumentValue(final StmtContext ctx, final String value) { - return MountPointLabel.create(StmtContextUtils.parseIdentifier(ctx, value)); + return new MountPointLabel(StmtContextUtils.parseIdentifier(ctx, value)).intern(); } @Override public MountPointLabel adaptArgumentValue( final StmtContext ctx, final QNameModule targetModule) { - return MountPointLabel.create(ctx.getArgument().qname().bindTo(targetModule)); + return new MountPointLabel(ctx.getArgument().qname().bindTo(targetModule)).intern(); } @Override diff --git a/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/RefMountPointStatement.java b/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/RefMountPointStatement.java index cbb8f22da1..bce60639e3 100644 --- a/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/RefMountPointStatement.java +++ b/parser/rfc8528-parser-support/src/main/java/org/opendaylight/yangtools/rfc8528/parser/RefMountPointStatement.java @@ -7,8 +7,8 @@ */ package org.opendaylight.yangtools.rfc8528.parser; -import org.opendaylight.yangtools.rfc8528.model.api.MountPointLabel; import org.opendaylight.yangtools.rfc8528.model.api.MountPointStatement; +import org.opendaylight.yangtools.yang.common.MountPointLabel; import org.opendaylight.yangtools.yang.model.api.meta.DeclarationReference; import org.opendaylight.yangtools.yang.model.spi.meta.AbstractRefStatement; -- 2.36.6