From b221bb46d5ec5d355985a089a7eb2e02975f1bfd Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Sun, 14 Nov 2021 19:32:58 +0100 Subject: [PATCH] Add Empty.value() Introduce a more friendly name for returning the empty instance. The new method is 'value()' and 'getInstance()' is deprecated. JIRA: YANGTOOLS-1363 Change-Id: Ie74754655247fcf74c1689bbb246fb4035999bb3 Signed-off-by: Robert Varga (cherry picked from commit da73a2179571830c2d9da75957fbb664accf26c6) --- .../codec/binfmt/AbstractLithiumDataInput.java | 2 +- .../binfmt/AbstractMagnesiumDataInput.java | 2 +- .../NormalizedNodeStreamReaderWriterTest.java | 2 +- .../yang/data/codec/gson/EmptyJSONCodec.java | 2 +- .../codec/gson/AbstractComplexJsonTest.java | 2 +- .../yang/data/codec/xml/EmptyXmlCodec.java | 2 +- .../yangtools/yang/common/Empty.java | 18 +++++++++++++++++- .../yangtools/yang/common/EmptyTest.java | 8 ++++---- .../yang/data/impl/codec/EmptyStringCodec.java | 2 +- .../impl/schema/InstanceIdToSimpleNodes.java | 2 +- .../data/impl/codec/EmptyCodecStringTest.java | 4 ++-- .../data/impl/codec/UnionCodecStringTest.java | 2 +- .../data/util/LeafListEntryContextNode.java | 2 +- .../impl/decl/UnrecognizedStatementImpl.java | 2 +- .../spi/meta/AbstractDeclaredStatement.java | 2 +- .../parser/YangDataStatementSupport.java | 4 ++-- .../AbstractAugmentStatementSupport.java | 2 +- .../stmt/augment/AugmentInferenceAction.java | 2 +- .../stmt/import_/ImportStatementSupport.java | 2 +- .../rfc7950/stmt/import_/RevisionImport.java | 2 +- .../stmt/import_/SemanticVersionImport.java | 2 +- .../stmt/module/ModuleStatementSupport.java | 5 ++--- .../stmt/refine/RefineStatementSupport.java | 2 +- .../type/AbstractTypeStatementSupport.java | 6 +++--- .../stmt/uses/UsesStatementSupport.java | 6 +++--- .../yangtools/yang/stmt/Bug1412Test.java | 2 +- ...rdPartyExtensionEffectiveStatementImpl.java | 2 +- .../plugin/ThirdPartyExtensionSupport.java | 2 +- .../meta/AbstractEmptyStatementSupport.java | 2 +- 29 files changed, 55 insertions(+), 40 deletions(-) diff --git a/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/AbstractLithiumDataInput.java b/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/AbstractLithiumDataInput.java index c052dbf2d1..b056ca07a6 100644 --- a/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/AbstractLithiumDataInput.java +++ b/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/AbstractLithiumDataInput.java @@ -389,7 +389,7 @@ abstract class AbstractLithiumDataInput extends AbstractNormalizedNodeDataInput // very low. We'd have to know the yang type but, even if we did, we can't let a null value pass upstream // so we'd have to drop the leaf which might cause other issues. case LithiumValue.NULL_TYPE: - return Empty.getInstance(); + return Empty.value(); default: return null; diff --git a/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/AbstractMagnesiumDataInput.java b/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/AbstractMagnesiumDataInput.java index 87182a70c2..6c3f2c59eb 100644 --- a/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/AbstractMagnesiumDataInput.java +++ b/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/AbstractMagnesiumDataInput.java @@ -703,7 +703,7 @@ abstract class AbstractMagnesiumDataInput extends AbstractNormalizedNodeDataInpu case MagnesiumValue.BOOLEAN_TRUE: return Boolean.TRUE; case MagnesiumValue.EMPTY: - return Empty.getInstance(); + return Empty.value(); case MagnesiumValue.INT8: return input.readByte(); case MagnesiumValue.INT8_0: diff --git a/codec/yang-data-codec-binfmt/src/test/java/org/opendaylight/yangtools/yang/data/codec/binfmt/NormalizedNodeStreamReaderWriterTest.java b/codec/yang-data-codec-binfmt/src/test/java/org/opendaylight/yangtools/yang/data/codec/binfmt/NormalizedNodeStreamReaderWriterTest.java index 29e96a7fc7..eb418cd76c 100644 --- a/codec/yang-data-codec-binfmt/src/test/java/org/opendaylight/yangtools/yang/data/codec/binfmt/NormalizedNodeStreamReaderWriterTest.java +++ b/codec/yang-data-codec-binfmt/src/test/java/org/opendaylight/yangtools/yang/data/codec/binfmt/NormalizedNodeStreamReaderWriterTest.java @@ -158,7 +158,7 @@ public class NormalizedNodeStreamReaderWriterTest { new NodeIdentifier(TestModel.BINARY_LEAF_LIST_QNAME)) .withChild(entry1).withChild(entry2).build()) .withChild(ImmutableNodes.leafNode(TestModel.SOME_BINARY_DATA_QNAME, new byte[]{1, 2, 3, 4})) - .withChild(ImmutableNodes.leafNode(TestModel.EMPTY_QNAME, Empty.getInstance())) + .withChild(ImmutableNodes.leafNode(TestModel.EMPTY_QNAME, Empty.value())) .withChild(Builders.orderedMapBuilder() .withNodeIdentifier(new NodeIdentifier(TestModel.ORDERED_LIST_QNAME)) .withChild(ImmutableNodes.mapEntry(TestModel.ORDERED_LIST_ENTRY_QNAME, diff --git a/codec/yang-data-codec-gson/src/main/java/org/opendaylight/yangtools/yang/data/codec/gson/EmptyJSONCodec.java b/codec/yang-data-codec-gson/src/main/java/org/opendaylight/yangtools/yang/data/codec/gson/EmptyJSONCodec.java index e5f3371843..3165ad072b 100644 --- a/codec/yang-data-codec-gson/src/main/java/org/opendaylight/yangtools/yang/data/codec/gson/EmptyJSONCodec.java +++ b/codec/yang-data-codec-gson/src/main/java/org/opendaylight/yangtools/yang/data/codec/gson/EmptyJSONCodec.java @@ -27,7 +27,7 @@ final class EmptyJSONCodec implements JSONCodec { @Override public Empty parseValue(final Object ctx, final String input) { - return Empty.getInstance(); + return Empty.value(); } @Override diff --git a/codec/yang-data-codec-gson/src/test/java/org/opendaylight/yangtools/yang/data/codec/gson/AbstractComplexJsonTest.java b/codec/yang-data-codec-gson/src/test/java/org/opendaylight/yangtools/yang/data/codec/gson/AbstractComplexJsonTest.java index 3c1a8bb958..a8815f56ff 100644 --- a/codec/yang-data-codec-gson/src/test/java/org/opendaylight/yangtools/yang/data/codec/gson/AbstractComplexJsonTest.java +++ b/codec/yang-data-codec-gson/src/test/java/org/opendaylight/yangtools/yang/data/codec/gson/AbstractComplexJsonTest.java @@ -24,7 +24,7 @@ public abstract class AbstractComplexJsonTest { static final ContainerNode CONT1_WITH_EMPTYLEAF = Builders.containerBuilder() .withNodeIdentifier(new NodeIdentifier(CONT_1)) - .addChild(ImmutableNodes.leafNode(EMPTY_LEAF, Empty.getInstance())) + .addChild(ImmutableNodes.leafNode(EMPTY_LEAF, Empty.value())) .build(); static EffectiveModelContext schemaContext; diff --git a/codec/yang-data-codec-xml/src/main/java/org/opendaylight/yangtools/yang/data/codec/xml/EmptyXmlCodec.java b/codec/yang-data-codec-xml/src/main/java/org/opendaylight/yangtools/yang/data/codec/xml/EmptyXmlCodec.java index b598c80af8..72c481c6cd 100644 --- a/codec/yang-data-codec-xml/src/main/java/org/opendaylight/yangtools/yang/data/codec/xml/EmptyXmlCodec.java +++ b/codec/yang-data-codec-xml/src/main/java/org/opendaylight/yangtools/yang/data/codec/xml/EmptyXmlCodec.java @@ -29,7 +29,7 @@ final class EmptyXmlCodec implements XmlCodec { @Override public Empty parseValue(final NamespaceContext ctx, final String str) { - return Empty.getInstance(); + return Empty.value(); } @Override diff --git a/common/yang-common/src/main/java/org/opendaylight/yangtools/yang/common/Empty.java b/common/yang-common/src/main/java/org/opendaylight/yangtools/yang/common/Empty.java index af85eb0547..b5d09f6209 100644 --- a/common/yang-common/src/main/java/org/opendaylight/yangtools/yang/common/Empty.java +++ b/common/yang-common/src/main/java/org/opendaylight/yangtools/yang/common/Empty.java @@ -24,10 +24,26 @@ public final class Empty implements Immutable, Serializable { private static final Empty INSTANCE = new Empty(); private Empty() { - + // Hidden on purpose } + /** + * Return the singleton {@link Empty} value. + * + * @return Empty value. + * @deprecated Use {@link #value()} instead. + */ + @Deprecated(since = "7.0.10", forRemoval = true) public static Empty getInstance() { + return value(); + } + + /** + * Return the singleton {@link Empty} value. + * + * @return Empty value. + */ + public static Empty value() { return INSTANCE; } diff --git a/common/yang-common/src/test/java/org/opendaylight/yangtools/yang/common/EmptyTest.java b/common/yang-common/src/test/java/org/opendaylight/yangtools/yang/common/EmptyTest.java index 4df61f90e6..a32d54b1ad 100644 --- a/common/yang-common/src/test/java/org/opendaylight/yangtools/yang/common/EmptyTest.java +++ b/common/yang-common/src/test/java/org/opendaylight/yangtools/yang/common/EmptyTest.java @@ -22,19 +22,19 @@ public class EmptyTest { @Test public void testInstanceNotNull() { - assertNotNull(Empty.getInstance()); + assertNotNull(Empty.value()); } @Test public void testToString() { - assertEquals("empty", Empty.getInstance().toString()); + assertEquals("empty", Empty.value().toString()); } @Test public void testSerialization() throws IOException, ClassNotFoundException { final ByteArrayOutputStream bos = new ByteArrayOutputStream(); try (ObjectOutputStream oos = new ObjectOutputStream(bos)) { - oos.writeObject(Empty.getInstance()); + oos.writeObject(Empty.value()); } final Object read; @@ -42,6 +42,6 @@ public class EmptyTest { read = ois.readObject(); } - assertSame(Empty.getInstance(), read); + assertSame(Empty.value(), read); } } diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/codec/EmptyStringCodec.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/codec/EmptyStringCodec.java index 3810ce9bfe..62655f9c6f 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/codec/EmptyStringCodec.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/codec/EmptyStringCodec.java @@ -25,7 +25,7 @@ final class EmptyStringCodec extends TypeDefinitionAwareCodec extends InstanceI static final class LeafListEntryNormalization extends InstanceIdToSimpleNodes { LeafListEntryNormalization(final LeafListSchemaNode potential) { // We are fudging a value here - super(new NodeWithValue<>(potential.getQName(), Empty.getInstance())); + super(new NodeWithValue<>(potential.getQName(), Empty.value())); } @Override diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/codec/EmptyCodecStringTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/codec/EmptyCodecStringTest.java index 24a2b78d37..8463474b66 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/codec/EmptyCodecStringTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/codec/EmptyCodecStringTest.java @@ -26,7 +26,7 @@ public class EmptyCodecStringTest { public void testSerialize() { EmptyCodec codec = TypeDefinitionAwareCodecTestHelper.getCodec(BaseTypes.emptyType(), EmptyCodec.class); - assertEquals("serialize", "", codec.serialize(Empty.getInstance())); + assertEquals("serialize", "", codec.serialize(Empty.value())); } @SuppressWarnings("unchecked") @@ -34,7 +34,7 @@ public class EmptyCodecStringTest { public void testDeserialize() { EmptyCodec codec = TypeDefinitionAwareCodecTestHelper.getCodec(BaseTypes.emptyType(), EmptyCodec.class); - assertEquals("deserialize", Empty.getInstance(), codec.deserialize("")); + assertEquals("deserialize", Empty.value(), codec.deserialize("")); TypeDefinitionAwareCodecTestHelper.deserializeWithExpectedIllegalArgEx(codec, "foo"); } diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/codec/UnionCodecStringTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/codec/UnionCodecStringTest.java index 44d8e5f61b..bb02423d26 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/codec/UnionCodecStringTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/codec/UnionCodecStringTest.java @@ -61,7 +61,7 @@ public class UnionCodecStringTest { assertEquals("deserialize", 123, codec.deserialize("123")); assertEquals("deserialize", -123, codec.deserialize("-123")); assertEquals("deserialize", 41234567890L, codec.deserialize("41234567890")); - assertEquals("deserialize", Empty.getInstance(), codec.deserialize("")); + assertEquals("deserialize", Empty.value(), codec.deserialize("")); deserializeWithExpectedIllegalArgEx(codec, "enum3"); deserializeWithExpectedIllegalArgEx(codec, "123o"); diff --git a/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/LeafListEntryContextNode.java b/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/LeafListEntryContextNode.java index 641758c3e7..dc313f4dd5 100644 --- a/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/LeafListEntryContextNode.java +++ b/data/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/LeafListEntryContextNode.java @@ -13,7 +13,7 @@ import org.opendaylight.yangtools.yang.model.api.LeafListSchemaNode; final class LeafListEntryContextNode extends AbstractLeafNodeContext, LeafListSchemaNode> { LeafListEntryContextNode(final LeafListSchemaNode potential) { - super(new NodeWithValue<>(potential.getQName(), Empty.getInstance()), potential); + super(new NodeWithValue<>(potential.getQName(), Empty.value()), potential); } @Override diff --git a/model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/decl/UnrecognizedStatementImpl.java b/model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/decl/UnrecognizedStatementImpl.java index 2066c14fed..eabd840f8c 100644 --- a/model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/decl/UnrecognizedStatementImpl.java +++ b/model/yang-model-ri/src/main/java/org/opendaylight/yangtools/yang/model/ri/stmt/impl/decl/UnrecognizedStatementImpl.java @@ -34,6 +34,6 @@ public final class UnrecognizedStatementImpl extends WithSubstatements i @Override public Object argument() { final String raw = rawArgument(); - return raw != null ? raw : Empty.getInstance(); + return raw != null ? raw : Empty.value(); } } diff --git a/model/yang-model-spi/src/main/java/org/opendaylight/yangtools/yang/model/spi/meta/AbstractDeclaredStatement.java b/model/yang-model-spi/src/main/java/org/opendaylight/yangtools/yang/model/spi/meta/AbstractDeclaredStatement.java index b88bbadbc0..3c3ecdf3cc 100644 --- a/model/yang-model-spi/src/main/java/org/opendaylight/yangtools/yang/model/spi/meta/AbstractDeclaredStatement.java +++ b/model/yang-model-spi/src/main/java/org/opendaylight/yangtools/yang/model/spi/meta/AbstractDeclaredStatement.java @@ -215,7 +215,7 @@ public abstract class AbstractDeclaredStatement extends AbstractModelStatemen @Override public final Empty argument() { - return Empty.getInstance(); + return Empty.value(); } @Override diff --git a/parser/rfc8040-parser-support/src/main/java/org/opendaylight/yangtools/rfc8040/parser/YangDataStatementSupport.java b/parser/rfc8040-parser-support/src/main/java/org/opendaylight/yangtools/rfc8040/parser/YangDataStatementSupport.java index 98a22df30c..dc21a0eae1 100644 --- a/parser/rfc8040-parser-support/src/main/java/org/opendaylight/yangtools/rfc8040/parser/YangDataStatementSupport.java +++ b/parser/rfc8040-parser-support/src/main/java/org/opendaylight/yangtools/rfc8040/parser/YangDataStatementSupport.java @@ -59,7 +59,7 @@ public final class YangDataStatementSupport // Parse and populate our argument to be picked up when we build the effecitve statement final String argument = SourceException.throwIfNull(ctx.argument(), ctx, "yang-data requires an argument"); final QName qname = StmtContextUtils.parseIdentifier(ctx, argument); - ctx.addToNs(YangDataArgumentNamespace.class, Empty.getInstance(), qname); + ctx.addToNs(YangDataArgumentNamespace.class, Empty.value(), qname); } @Override @@ -100,6 +100,6 @@ public final class YangDataStatementSupport } return new YangDataEffectiveStatementImpl(stmt, substatements, - verifyNotNull(stmt.namespaceItem(YangDataArgumentNamespace.class, Empty.getInstance()))); + verifyNotNull(stmt.namespaceItem(YangDataArgumentNamespace.class, Empty.value()))); } } diff --git a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AbstractAugmentStatementSupport.java b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AbstractAugmentStatementSupport.java index a6df687892..48b9fb40a0 100644 --- a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AbstractAugmentStatementSupport.java +++ b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AbstractAugmentStatementSupport.java @@ -129,7 +129,7 @@ abstract class AbstractAugmentStatementSupport // Pick up the marker left by onFullDefinitionDeclared() inference action. If it is present we need to pass our // children through target's implicit wrapping. final StatementContextBase implicitDef = stmt.getFromNamespace(AugmentImplicitHandlingNamespace.class, - Empty.getInstance()); + Empty.value()); return implicitDef == null ? substatements : Lists.transform(substatements, subCtx -> { verify(subCtx instanceof StatementContextBase); return implicitDef.wrapWithImplicit((StatementContextBase) subCtx); diff --git a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AugmentInferenceAction.java b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AugmentInferenceAction.java index 9877dd6924..2f19c1a1cd 100644 --- a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AugmentInferenceAction.java +++ b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/augment/AugmentInferenceAction.java @@ -72,7 +72,7 @@ final class AugmentInferenceAction implements InferenceAction { // We are targeting a context which is creating implicit nodes. In order to keep things consistent, // we will need to circle back when creating effective statements. if (augmentTargetCtx.hasImplicitParentSupport()) { - augmentNode.addToNs(AugmentImplicitHandlingNamespace.class, Empty.getInstance(), augmentTargetCtx); + augmentNode.addToNs(AugmentImplicitHandlingNamespace.class, Empty.value(), augmentTargetCtx); } copyFromSourceToTarget((StatementContextBase) augmentNode, augmentTargetCtx); diff --git a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/ImportStatementSupport.java b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/ImportStatementSupport.java index 0ec75ec6ad..746685be0f 100644 --- a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/ImportStatementSupport.java +++ b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/ImportStatementSupport.java @@ -142,6 +142,6 @@ public final class ImportStatementSupport final ImmutableList> substatements) { InferenceException.throwIf(substatements.isEmpty(), stmt, "Unexpected empty effective import statement"); return EffectiveStatements.createImport(stmt.declared(), substatements, - verifyNotNull(stmt.getFromNamespace(ImportedVersionNamespace.class, Empty.getInstance()))); + verifyNotNull(stmt.getFromNamespace(ImportedVersionNamespace.class, Empty.value()))); } } diff --git a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/RevisionImport.java b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/RevisionImport.java index 57f95eefe6..ccc24d7175 100644 --- a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/RevisionImport.java +++ b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/RevisionImport.java @@ -65,7 +65,7 @@ final class RevisionImport { final SourceIdentifier importedModuleIdentifier = stmt.getFromNamespace(ModuleCtxToSourceIdentifier.class, importedModule); - stmt.addToNs(ImportedVersionNamespace.class, Empty.getInstance(), importedModuleIdentifier); + stmt.addToNs(ImportedVersionNamespace.class, Empty.value(), importedModuleIdentifier); final QNameModule mod = InferenceException.throwIfNull(stmt.getFromNamespace( ModuleCtxToModuleQName.class, importedModule), stmt, "Failed to find module of %s", importedModule); diff --git a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/SemanticVersionImport.java b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/SemanticVersionImport.java index d69022f98b..48c78e54fb 100644 --- a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/SemanticVersionImport.java +++ b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/import_/SemanticVersionImport.java @@ -139,7 +139,7 @@ final class SemanticVersionImport { ModuleCtxToSourceIdentifier.class, importedModule); final SemVerSourceIdentifier semVerModuleIdentifier = createSemVerModuleIdentifier( importedModuleIdentifier, importedVersion); - stmt.addToNs(ImportedVersionNamespace.class, Empty.getInstance(), semVerModuleIdentifier); + stmt.addToNs(ImportedVersionNamespace.class, Empty.value(), semVerModuleIdentifier); linkageTarget.resolve(ctx).addToNs(ImportedModuleContext.class, importedModuleIdentifier, importedModule); diff --git a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/module/ModuleStatementSupport.java b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/module/ModuleStatementSupport.java index 9026d06136..a9955abd46 100644 --- a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/module/ModuleStatementSupport.java +++ b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/module/ModuleStatementSupport.java @@ -204,7 +204,7 @@ public final class ModuleStatementSupport firstAttributeOf(stmt.declaredSubstatements(), PrefixStatement.class), stmt, "Prefix of the module [%s] is missing", stmt.argument()); - stmt.addToNs(QNameModuleNamespace.class, Empty.getInstance(), qNameModule); + stmt.addToNs(QNameModuleNamespace.class, Empty.value(), qNameModule); stmt.addToNs(PrefixToModule.class, modulePrefix, qNameModule); stmt.addToNs(ModuleNameToModuleQName.class, moduleName, qNameModule); stmt.addToNs(ModuleCtxToModuleQName.class, stmt, qNameModule); @@ -273,8 +273,7 @@ public final class ModuleStatementSupport submodules.add((Submodule) submodule); } - final QNameModule qnameModule = verifyNotNull(stmt.namespaceItem(QNameModuleNamespace.class, - Empty.getInstance())); + final QNameModule qnameModule = verifyNotNull(stmt.namespaceItem(QNameModuleNamespace.class, Empty.value())); try { return new ModuleEffectiveStatementImpl(stmt, substatements, submodules, qnameModule); } catch (SubstatementIndexingException e) { diff --git a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/refine/RefineStatementSupport.java b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/refine/RefineStatementSupport.java index ce26204b21..c09c3bb66d 100644 --- a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/refine/RefineStatementSupport.java +++ b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/refine/RefineStatementSupport.java @@ -91,7 +91,7 @@ public final class RefineStatementSupport final ImmutableList> substatements) { // Empty refine is exceedingly unlikely: let's be lazy and reuse the implementation return new RefineEffectiveStatementImpl(stmt.declared(), substatements, - (SchemaNode) verifyNotNull(stmt.namespaceItem(RefineTargetNamespace.class, Empty.getInstance())) + (SchemaNode) verifyNotNull(stmt.namespaceItem(RefineTargetNamespace.class, Empty.value())) .buildEffective()); } } diff --git a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractTypeStatementSupport.java b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractTypeStatementSupport.java index 44cad1f9e0..03f842e1fe 100644 --- a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractTypeStatementSupport.java +++ b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/type/AbstractTypeStatementSupport.java @@ -138,7 +138,7 @@ abstract class AbstractTypeStatementSupport extends AbstractTypeSupport resolveType(final Current ctx) { - final Object obj = verifyNotNull(ctx.namespaceItem(BaseTypeNamespace.class, Empty.getInstance())); + final Object obj = verifyNotNull(ctx.namespaceItem(BaseTypeNamespace.class, Empty.value())); if (obj instanceof BuiltinEffectiveStatement) { return (BuiltinEffectiveStatement) obj; } else if (obj instanceof StmtContext) { diff --git a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/uses/UsesStatementSupport.java b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/uses/UsesStatementSupport.java index 1718bc3218..22986ca4c0 100644 --- a/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/uses/UsesStatementSupport.java +++ b/parser/yang-parser-rfc7950/src/main/java/org/opendaylight/yangtools/yang/parser/rfc7950/stmt/uses/UsesStatementSupport.java @@ -117,7 +117,7 @@ public final class UsesStatementSupport copyFromSourceToTarget(sourceGrpStmtCtx, targetNodeStmtCtx, usesNode); resolveUsesNode(usesNode, targetNodeStmtCtx); StmtContextUtils.validateIfFeatureAndWhenOnListKeys(usesNode); - usesNode.addToNs(SourceGroupingNamespace.class, Empty.getInstance(), sourceGrpStmtCtx); + usesNode.addToNs(SourceGroupingNamespace.class, Empty.value(), sourceGrpStmtCtx); } @Override @@ -144,7 +144,7 @@ public final class UsesStatementSupport protected UsesEffectiveStatement createEffective(final Current stmt, final ImmutableList> substatements) { final EffectiveStatement source = - verifyNotNull(stmt.getFromNamespace(SourceGroupingNamespace.class, Empty.getInstance())).buildEffective(); + verifyNotNull(stmt.getFromNamespace(SourceGroupingNamespace.class, Empty.value())).buildEffective(); verify(source instanceof GroupingDefinition, "Unexpected source %s", source); final GroupingDefinition sourceGrouping = (GroupingDefinition) source; @@ -318,7 +318,7 @@ public final class UsesStatementSupport // Target is a prerequisite for the 'refine', hence if the target is not supported, the refine is not supported // as well. Otherwise add a pointer to the target into refine's local namespace. if (refineTargetNodeCtx.isSupportedToBuildEffective()) { - subStmtCtx.addToNs(RefineTargetNamespace.class, Empty.getInstance(), refineTargetNodeCtx); + subStmtCtx.addToNs(RefineTargetNamespace.class, Empty.value(), refineTargetNodeCtx); } else { subStmtCtx.setIsSupportedToBuildEffective(false); } diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug1412Test.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug1412Test.java index e9710de65e..1381d30db7 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug1412Test.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug1412Test.java @@ -84,6 +84,6 @@ public class Bug1412Test { expectedNodeType = QName.create("urn:test:bug1412:ext:definitions", "2014-07-25", "output"); assertEquals(expectedNodeType, output.statementDefinition().getStatementName()); - assertEquals(Empty.getInstance(), output.argument()); + assertEquals(Empty.value(), output.argument()); } } diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/thirdparty/plugin/ThirdPartyExtensionEffectiveStatementImpl.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/thirdparty/plugin/ThirdPartyExtensionEffectiveStatementImpl.java index 3e330101b9..4a92682e3d 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/thirdparty/plugin/ThirdPartyExtensionEffectiveStatementImpl.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/thirdparty/plugin/ThirdPartyExtensionEffectiveStatementImpl.java @@ -29,7 +29,7 @@ final class ThirdPartyExtensionEffectiveStatementImpl final ImmutableList> substatements) { super(stmt, substatements); path = SchemaPathSupport.toOptionalPath(stmt.getEffectiveParent().getSchemaPath().createChild(getNodeType())); - valueFromNamespace = stmt.getFromNamespace(ThirdPartyNamespace.class, Empty.getInstance()); + valueFromNamespace = stmt.getFromNamespace(ThirdPartyNamespace.class, Empty.value()); } @Override diff --git a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/thirdparty/plugin/ThirdPartyExtensionSupport.java b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/thirdparty/plugin/ThirdPartyExtensionSupport.java index 180b528e5b..f66de742fa 100644 --- a/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/thirdparty/plugin/ThirdPartyExtensionSupport.java +++ b/parser/yang-parser-rfc7950/src/test/java/org/opendaylight/yangtools/yang/thirdparty/plugin/ThirdPartyExtensionSupport.java @@ -28,7 +28,7 @@ public final class ThirdPartyExtensionSupport public void onFullDefinitionDeclared( final Mutable stmt) { super.onFullDefinitionDeclared(stmt); - stmt.addToNs(ThirdPartyNamespace.class, Empty.getInstance(), "Third-party namespace test."); + stmt.addToNs(ThirdPartyNamespace.class, Empty.value(), "Third-party namespace test."); } @Override diff --git a/parser/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/AbstractEmptyStatementSupport.java b/parser/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/AbstractEmptyStatementSupport.java index 3b48c1e880..407a475936 100644 --- a/parser/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/AbstractEmptyStatementSupport.java +++ b/parser/yang-parser-spi/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/AbstractEmptyStatementSupport.java @@ -27,6 +27,6 @@ public abstract class AbstractEmptyStatementSupport ctx, final String value) { InferenceException.throwIf(value != null, ctx, "Unexpected argument value %s", value); - return Empty.getInstance(); + return Empty.value(); } } -- 2.36.6