From f40e99a51cd3fc2c9be3ac8aa0772bdb6b6ce479 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Sun, 18 Jun 2023 13:04:24 +0200 Subject: [PATCH] Bump upstreams Adopt: - odlparent-13.0.1 - yangtools-11.0.0-SNAPSHOT - mdsal-12-0.0-SNAPSHOT Since the format of NormalizedNode tree is updated to not include AugmentationNode (and AugmentationIdentifier), we must force an incompatible update, as we do not have enough information to produce compatible payload. Change-Id: Ibf444540ed052b49651ba66ca7b93c806a6c8a97 Signed-off-by: Robert Varga --- akka/pom.xml | 2 +- akka/repackaged-akka-jar/pom.xml | 2 +- artifacts/pom.xml | 2 +- benchmark/dsbenchmark/pom.xml | 5 ++ benchmark/pom.xml | 2 +- bundle-parent/pom.xml | 2 +- docs/pom.xml | 12 ++-- .../features-controller-experimental/pom.xml | 2 +- features/features-controller-testing/pom.xml | 2 +- features/features-controller/pom.xml | 2 +- .../src/main/feature/feature.xml | 2 +- .../src/main/feature/feature.xml | 8 +-- .../src/main/feature/feature.xml | 8 +-- .../src/main/feature/feature.xml | 2 +- .../src/main/feature/feature.xml | 4 +- .../src/main/feature/feature.xml | 4 +- .../src/main/feature/feature.xml | 10 +-- .../src/main/feature/feature.xml | 10 +-- .../odl-toaster/src/main/feature/feature.xml | 2 +- features/pom.xml | 2 +- features/single-feature-parent/pom.xml | 2 +- jolokia/pom.xml | 2 +- karaf/pom.xml | 2 +- opendaylight/blueprint/pom.xml | 11 +++- .../blueprint/ext/BindingContext.java | 10 +-- .../blueprint/ext/ComponentProcessor.java | 2 - .../netty-event-executor-config/pom.xml | 2 +- .../config/netty-threadgroup-config/pom.xml | 2 +- .../config/netty-timer-config/pom.xml | 6 +- opendaylight/config/pom.xml | 2 +- .../config/threadpool-config-api/pom.xml | 2 +- .../config/threadpool-config-impl/pom.xml | 2 +- .../controller/cluster/access/ABIVersion.java | 17 +++--- .../cluster/access/concepts/Message.java | 4 +- .../cluster/access/ABIVersionTest.java | 12 ++-- .../AbstractReadTransactionRequestTest.java | 2 +- .../ModifyTransactionRequestBuilderTest.java | 2 +- .../ModifyTransactionRequestTest.java | 4 +- opendaylight/md-sal/cds-access-client/pom.xml | 5 ++ .../client/ConnectedClientConnectionTest.java | 2 +- opendaylight/md-sal/cds-mgmt-api/pom.xml | 7 +++ opendaylight/md-sal/mdsal-it-base/pom.xml | 4 +- opendaylight/md-sal/mdsal-it-parent/pom.xml | 2 +- opendaylight/md-sal/parent/pom.xml | 2 +- opendaylight/md-sal/pom.xml | 2 +- .../md-sal/sal-akka-raft-example/pom.xml | 5 ++ opendaylight/md-sal/sal-akka-raft/pom.xml | 5 ++ .../md-sal/sal-cluster-admin-impl/pom.xml | 5 ++ .../md-sal/sal-clustering-commons/pom.xml | 5 ++ .../node/utils/NormalizedNodeNavigator.java | 4 +- .../node/utils/stream/SerializationUtils.java | 10 ++- .../AbstractNormalizedNodePruner.java | 28 ++++----- .../utils/transformer/UintAdaptingPruner.java | 13 ++-- .../AbstractDataTreeModificationCursor.java | 2 +- ...angTextSchemaSourceSerializationProxy.java | 8 +-- .../utils/stream/SerializationUtilsTest.java | 61 ++++--------------- .../transformer/NormalizedNodePrunerTest.java | 38 +++--------- .../transformer/UintAdaptingPrunerTest.java | 5 +- .../cluster/datastore/util/TestModel.java | 23 +++---- .../impl/RemoteSchemaProviderTest.java | 7 +-- .../RemoteYangTextSourceProviderImplTest.java | 7 +-- .../YangTextSourceSerializationProxyTest.java | 17 ++---- .../md-sal/sal-clustering-config/pom.xml | 2 +- .../AbstractDOMBrokerWriteTransaction.java | 2 +- .../dds/AbstractShardBackendResolver.java | 2 +- .../databroker/actors/dds/ClientSnapshot.java | 2 +- .../actors/dds/ClientTransaction.java | 28 +++------ .../cluster/datastore/DataStoreVersions.java | 5 +- .../DataTreeCohortActorRegistry.java | 18 +++--- .../cluster/datastore/DatastoreContext.java | 2 +- .../RootDataTreeChangeListenerActor.java | 8 +-- .../RootDataTreeChangeListenerProxy.java | 2 +- .../cluster/datastore/ShardDataTree.java | 15 +++-- .../cluster/datastore/TransactionProxy.java | 29 ++++----- .../datastore/actors/JsonExportActor.java | 18 +++--- .../VersionedExternalizableMessage.java | 4 +- .../AbstractDataTreeCandidateNode.java | 16 ++--- ...bstractVersionedShardDataTreeSnapshot.java | 10 ++- .../DataTreeCandidateInputOutput.java | 30 ++++----- .../DeletedDataTreeCandidateNode.java | 14 ++--- .../MetadataShardDataTreeSnapshot.java | 2 +- .../ModifiedDataTreeCandidateNode.java | 12 ++-- .../datastore/persisted/PayloadVersion.java | 39 ++++-------- .../datastore/utils/RootScatterGather.java | 10 +-- .../ClientBackedReadTransactionTest.java | 8 +-- .../ClientBackedReadWriteTransactionTest.java | 8 +-- .../ClientBackedWriteTransactionTest.java | 12 ++-- .../ConcurrentDOMDataBrokerTest.java | 20 +++--- .../actors/dds/AbstractClientHandleTest.java | 2 +- .../actors/dds/AbstractClientHistoryTest.java | 2 +- .../AbstractDataStoreClientBehaviorTest.java | 8 +-- .../actors/dds/ClientSnapshotTest.java | 2 +- .../dds/ModuleShardBackendResolverTest.java | 10 +-- ...ctDistributedDataStoreIntegrationTest.java | 8 +-- .../cluster/datastore/AbstractShardTest.java | 11 ++-- .../datastore/DataTreeCohortActorTest.java | 4 +- .../DataTreeCohortIntegrationTest.java | 12 ++-- .../DatastoreSnapshotRestoreTest.java | 2 +- ...butedDataStoreRemotingIntegrationTest.java | 6 +- .../FrontendReadWriteTransactionTest.java | 4 +- .../LocalTransactionContextTest.java | 16 ++--- .../RootDataTreeChangeListenerProxyTest.java | 4 +- .../cluster/datastore/ShardDataTreeTest.java | 50 ++++++++------- .../ShardRecoveryCoordinatorTest.java | 2 +- .../cluster/datastore/ShardTest.java | 16 ++--- .../ShardTransactionFailureTest.java | 12 ++-- .../datastore/ShardTransactionTest.java | 4 +- .../SimpleShardDataTreeCohortTest.java | 4 +- .../datastore/TransactionProxyTest.java | 4 +- .../MutableCompositeModificationTest.java | 12 ++-- .../CommitTransactionPayloadTest.java | 20 +++--- .../utils/MockDataTreeChangeListener.java | 9 ++- .../utils/NormalizedNodeAggregatorTest.java | 8 +-- .../PruningDataTreeModificationTest.java | 20 +++--- .../datastore/model/CompositeModel.java | 7 +-- .../test/resources/expectedJournalExport.json | 2 +- .../md-sal/sal-remoterpc-connector/pom.xml | 5 ++ .../RemoteActionRegistryMXBeanImplTest.java | 2 +- .../RemoteRpcRegistryMXBeanImplTest.java | 2 +- .../clustering-test-app/configuration/pom.xml | 2 +- .../samples/clustering-test-app/pom.xml | 2 +- .../clustering-test-app/provider/pom.xml | 5 ++ opendaylight/md-sal/samples/pom.xml | 2 +- pom.xml | 2 +- 124 files changed, 492 insertions(+), 547 deletions(-) diff --git a/akka/pom.xml b/akka/pom.xml index 91a43b1a29..42ec380982 100644 --- a/akka/pom.xml +++ b/akka/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.odlparent odlparent-lite - 12.0.6 + 13.0.1 diff --git a/akka/repackaged-akka-jar/pom.xml b/akka/repackaged-akka-jar/pom.xml index 69ba97bb46..0e0edb428c 100644 --- a/akka/repackaged-akka-jar/pom.xml +++ b/akka/repackaged-akka-jar/pom.xml @@ -13,7 +13,7 @@ org.opendaylight.odlparent odlparent - 12.0.6 + 13.0.1 diff --git a/artifacts/pom.xml b/artifacts/pom.xml index 8820918d91..be83ab17fe 100644 --- a/artifacts/pom.xml +++ b/artifacts/pom.xml @@ -14,7 +14,7 @@ org.opendaylight.odlparent odlparent-lite - 12.0.6 + 13.0.1 diff --git a/benchmark/dsbenchmark/pom.xml b/benchmark/dsbenchmark/pom.xml index 33503a746c..e55bb42dec 100644 --- a/benchmark/dsbenchmark/pom.xml +++ b/benchmark/dsbenchmark/pom.xml @@ -20,6 +20,11 @@ and is available at http://www.eclipse.org/legal/epl-v10.html bundle + + com.github.spotbugs + spotbugs-annotations + true + org.opendaylight.controller benchmark-api diff --git a/benchmark/pom.xml b/benchmark/pom.xml index fefacbe380..e8d4c6c1f2 100644 --- a/benchmark/pom.xml +++ b/benchmark/pom.xml @@ -10,7 +10,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html org.opendaylight.odlparent odlparent-lite - 12.0.6 + 13.0.1 diff --git a/bundle-parent/pom.xml b/bundle-parent/pom.xml index e3c5f6db09..b824fa5bdf 100644 --- a/bundle-parent/pom.xml +++ b/bundle-parent/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.mdsal dom-parent - 11.0.11 + 12.0.0-SNAPSHOT diff --git a/docs/pom.xml b/docs/pom.xml index a3e0b2f075..5e26c1eb25 100644 --- a/docs/pom.xml +++ b/docs/pom.xml @@ -12,7 +12,7 @@ org.opendaylight.odlparent odlparent - 12.0.6 + 13.0.1 @@ -97,6 +97,10 @@ + + com.github.spotbugs + spotbugs-annotations + com.guicedee.services javax.inject @@ -229,9 +233,9 @@ http://netty.io/4.1/api/ https://commons.apache.org/proper/commons-lang/javadocs/api-release/ - https://www.javadoc.io/doc/org.opendaylight.odlparent/odlparent-docs/12.0.6/ - https://www.javadoc.io/doc/org.opendaylight.yangtools/yangtools-docs/10.0.8/ - https://www.javadoc.io/doc/org.opendaylight.mdsal/mdsal-docs/11.0.11/ + https://www.javadoc.io/doc/org.opendaylight.odlparent/odlparent-docs/13.0.1/ + https://www.javadoc.io/doc/org.opendaylight.yangtools/yangtools-docs/11.0.0-SNAPSHOT/ + https://www.javadoc.io/doc/org.opendaylight.mdsal/mdsal-docs/12.0.0-SNAPSHOT/ diff --git a/features/features-controller-experimental/pom.xml b/features/features-controller-experimental/pom.xml index 4e494a1cab..3ab49ac0b4 100644 --- a/features/features-controller-experimental/pom.xml +++ b/features/features-controller-experimental/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.odlparent feature-repo-parent - 12.0.6 + 13.0.1 diff --git a/features/features-controller-testing/pom.xml b/features/features-controller-testing/pom.xml index 01319d1ddc..12f06b9dda 100644 --- a/features/features-controller-testing/pom.xml +++ b/features/features-controller-testing/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.odlparent feature-repo-parent - 12.0.6 + 13.0.1 diff --git a/features/features-controller/pom.xml b/features/features-controller/pom.xml index 47c7991259..cec04e4d90 100644 --- a/features/features-controller/pom.xml +++ b/features/features-controller/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.odlparent feature-repo-parent - 12.0.6 + 13.0.1 diff --git a/features/odl-clustering-test-app/src/main/feature/feature.xml b/features/odl-clustering-test-app/src/main/feature/feature.xml index 1a4c7ad2b8..c95d9943cf 100644 --- a/features/odl-clustering-test-app/src/main/feature/feature.xml +++ b/features/odl-clustering-test-app/src/main/feature/feature.xml @@ -8,6 +8,6 @@ --> - odl-mdsal-model-rfc6991 + odl-mdsal-model-rfc6991 diff --git a/features/odl-controller-blueprint/src/main/feature/feature.xml b/features/odl-controller-blueprint/src/main/feature/feature.xml index b339ffa8e6..668fc452b0 100644 --- a/features/odl-controller-blueprint/src/main/feature/feature.xml +++ b/features/odl-controller-blueprint/src/main/feature/feature.xml @@ -8,10 +8,10 @@ --> - odl-yangtools-codec - odl-mdsal-binding-api - odl-mdsal-binding-runtime - odl-mdsal-dom-api + odl-yangtools-codec + odl-mdsal-binding-api + odl-mdsal-binding-runtime + odl-mdsal-dom-api mvn:org.opendaylight.controller/blueprint/${project.version} diff --git a/features/odl-controller-broker-local/src/main/feature/feature.xml b/features/odl-controller-broker-local/src/main/feature/feature.xml index d2c697508f..1c001649b9 100644 --- a/features/odl-controller-broker-local/src/main/feature/feature.xml +++ b/features/odl-controller-broker-local/src/main/feature/feature.xml @@ -8,9 +8,9 @@ --> - odl-mdsal-dom - odl-mdsal-eos-binding - odl-mdsal-eos-dom - odl-mdsal-singleton-dom + odl-mdsal-dom + odl-mdsal-eos-binding + odl-mdsal-eos-dom + odl-mdsal-singleton-dom diff --git a/features/odl-controller-exp-netty-config/src/main/feature/feature.xml b/features/odl-controller-exp-netty-config/src/main/feature/feature.xml index 9b07644cc0..866b352d94 100644 --- a/features/odl-controller-exp-netty-config/src/main/feature/feature.xml +++ b/features/odl-controller-exp-netty-config/src/main/feature/feature.xml @@ -8,6 +8,6 @@ --> - odl-netty-4 + odl-netty-4 diff --git a/features/odl-controller-mdsal-common/src/main/feature/feature.xml b/features/odl-controller-mdsal-common/src/main/feature/feature.xml index 48c9fe5cfe..2ecaff2ca8 100644 --- a/features/odl-controller-mdsal-common/src/main/feature/feature.xml +++ b/features/odl-controller-mdsal-common/src/main/feature/feature.xml @@ -8,7 +8,7 @@ --> - odl-mdsal-common - odl-mdsal-binding-runtime + odl-mdsal-common + odl-mdsal-binding-runtime diff --git a/features/odl-mdsal-broker/src/main/feature/feature.xml b/features/odl-mdsal-broker/src/main/feature/feature.xml index 215415b961..75bc4404ef 100644 --- a/features/odl-mdsal-broker/src/main/feature/feature.xml +++ b/features/odl-mdsal-broker/src/main/feature/feature.xml @@ -8,7 +8,7 @@ --> - odl-mdsal-singleton-dom - odl-mdsal-eos-binding + odl-mdsal-singleton-dom + odl-mdsal-eos-binding diff --git a/features/odl-mdsal-clustering-commons/src/main/feature/feature.xml b/features/odl-mdsal-clustering-commons/src/main/feature/feature.xml index d2d5c009f9..83b63b4059 100644 --- a/features/odl-mdsal-clustering-commons/src/main/feature/feature.xml +++ b/features/odl-mdsal-clustering-commons/src/main/feature/feature.xml @@ -8,10 +8,10 @@ --> - odl-apache-commons-lang3 - odl-dropwizard-metrics - odl-servlet-api - odl-yangtools-data - odl-yangtools-codec + odl-apache-commons-lang3 + odl-dropwizard-metrics + odl-servlet-api + odl-yangtools-data + odl-yangtools-codec diff --git a/features/odl-mdsal-distributed-datastore/src/main/feature/feature.xml b/features/odl-mdsal-distributed-datastore/src/main/feature/feature.xml index 0fd16bd9aa..269402109f 100644 --- a/features/odl-mdsal-distributed-datastore/src/main/feature/feature.xml +++ b/features/odl-mdsal-distributed-datastore/src/main/feature/feature.xml @@ -8,11 +8,11 @@ --> - odl-apache-commons-text - odl-yangtools-codec - odl-mdsal-eos-dom - odl-mdsal-dom-broker - odl-mdsal-binding-dom-adapter + odl-apache-commons-text + odl-yangtools-codec + odl-mdsal-eos-dom + odl-mdsal-dom-broker + odl-mdsal-binding-dom-adapter mvn:org.opendaylight.controller/sal-clustering-config/${project.version}/xml/akkaconf diff --git a/features/odl-toaster/src/main/feature/feature.xml b/features/odl-toaster/src/main/feature/feature.xml index 9a8e7aad42..a13fbd7ce1 100644 --- a/features/odl-toaster/src/main/feature/feature.xml +++ b/features/odl-toaster/src/main/feature/feature.xml @@ -8,6 +8,6 @@ --> - odl-mdsal-binding-runtime + odl-mdsal-binding-runtime diff --git a/features/pom.xml b/features/pom.xml index f40cc91ab3..a170bbe967 100644 --- a/features/pom.xml +++ b/features/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.odlparent odlparent-lite - 12.0.6 + 13.0.1 diff --git a/features/single-feature-parent/pom.xml b/features/single-feature-parent/pom.xml index 545e9f16bb..851caf9612 100644 --- a/features/single-feature-parent/pom.xml +++ b/features/single-feature-parent/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.odlparent single-feature-parent - 12.0.6 + 13.0.1 diff --git a/jolokia/pom.xml b/jolokia/pom.xml index bce89ef459..0970b7e23f 100644 --- a/jolokia/pom.xml +++ b/jolokia/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.odlparent odlparent - 12.0.6 + 13.0.1 diff --git a/karaf/pom.xml b/karaf/pom.xml index 0e64891bba..6138d7e61e 100644 --- a/karaf/pom.xml +++ b/karaf/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.odlparent karaf4-parent - 12.0.6 + 13.0.1 diff --git a/opendaylight/blueprint/pom.xml b/opendaylight/blueprint/pom.xml index 1f0c8eec39..5702fd0383 100644 --- a/opendaylight/blueprint/pom.xml +++ b/opendaylight/blueprint/pom.xml @@ -12,7 +12,7 @@ org.opendaylight.odlparent bundle-parent - 12.0.6 + 13.0.1 @@ -27,14 +27,14 @@ org.opendaylight.yangtools yangtools-artifacts - 10.0.8 + 11.0.0-SNAPSHOT pom import org.opendaylight.mdsal mdsal-artifacts - 11.0.11 + 12.0.0-SNAPSHOT pom import @@ -53,6 +53,11 @@ com.google.guava guava + + com.github.spotbugs + spotbugs-annotations + true + org.apache.aries.blueprint org.apache.aries.blueprint.core diff --git a/opendaylight/blueprint/src/main/java/org/opendaylight/controller/blueprint/ext/BindingContext.java b/opendaylight/blueprint/src/main/java/org/opendaylight/controller/blueprint/ext/BindingContext.java index 2a6b3d56f8..cfa0228747 100644 --- a/opendaylight/blueprint/src/main/java/org/opendaylight/controller/blueprint/ext/BindingContext.java +++ b/opendaylight/blueprint/src/main/java/org/opendaylight/controller/blueprint/ext/BindingContext.java @@ -17,12 +17,12 @@ import java.net.URISyntaxException; import java.util.Set; import javax.xml.stream.XMLStreamException; import javax.xml.transform.dom.DOMSource; -import org.opendaylight.mdsal.binding.spec.naming.BindingMapping; import org.opendaylight.mdsal.binding.spec.reflect.BindingReflections; import org.opendaylight.yangtools.yang.binding.DataObject; import org.opendaylight.yangtools.yang.binding.Identifiable; import org.opendaylight.yangtools.yang.binding.Identifier; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; +import org.opendaylight.yangtools.yang.binding.contract.Naming; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.schema.MapNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; @@ -30,7 +30,7 @@ import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStre import org.opendaylight.yangtools.yang.data.codec.xml.XmlParserStream; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNormalizedNodeStreamWriter; -import org.opendaylight.yangtools.yang.data.impl.schema.NormalizedNodeResult; +import org.opendaylight.yangtools.yang.data.impl.schema.NormalizationResultHolder; import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode; import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; import org.opendaylight.yangtools.yang.model.api.ListSchemaNode; @@ -87,12 +87,12 @@ public abstract class BindingContext { public NormalizedNode parseDataElement(final Element element, final SchemaTreeInference dataSchema) throws XMLStreamException, IOException, SAXException, URISyntaxException { - final NormalizedNodeResult resultHolder = new NormalizedNodeResult(); + final NormalizationResultHolder resultHolder = new NormalizationResultHolder(); final NormalizedNodeStreamWriter writer = ImmutableNormalizedNodeStreamWriter.from(resultHolder); final XmlParserStream xmlParser = XmlParserStream.create(writer, dataSchema); xmlParser.traverse(new DOMSource(element)); - final NormalizedNode result = resultHolder.getResult(); + final NormalizedNode result = resultHolder.getResult().data(); return result instanceof MapNode mapNode ? mapNode.body().iterator().next() : result; } @@ -133,7 +133,7 @@ public abstract class BindingContext { final String listKeyValue) throws InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException { // We assume the yang list key type is string. - Identifier keyInstance = (Identifier) bindingClass.getMethod(BindingMapping.IDENTIFIABLE_KEY_NAME) + Identifier keyInstance = (Identifier) bindingClass.getMethod(Naming.IDENTIFIABLE_KEY_NAME) .getReturnType().getConstructor(String.class).newInstance(listKeyValue); InstanceIdentifier appConfigPath = InstanceIdentifier.builder((Class)bindingClass, keyInstance).build(); return new ListBindingContext(bindingClass, appConfigPath, listKeyValue); diff --git a/opendaylight/blueprint/src/main/java/org/opendaylight/controller/blueprint/ext/ComponentProcessor.java b/opendaylight/blueprint/src/main/java/org/opendaylight/controller/blueprint/ext/ComponentProcessor.java index b83cd829d0..11807c6376 100644 --- a/opendaylight/blueprint/src/main/java/org/opendaylight/controller/blueprint/ext/ComponentProcessor.java +++ b/opendaylight/blueprint/src/main/java/org/opendaylight/controller/blueprint/ext/ComponentProcessor.java @@ -20,7 +20,6 @@ import org.apache.aries.blueprint.ext.AbstractPropertyPlaceholder; import org.apache.aries.blueprint.mutable.MutableBeanMetadata; import org.apache.aries.blueprint.mutable.MutableServiceReferenceMetadata; import org.apache.aries.util.AriesFrameworkUtil; -import org.gaul.modernizer_maven_annotations.SuppressModernizer; import org.opendaylight.controller.blueprint.BlueprintContainerRestartService; import org.osgi.framework.Bundle; import org.osgi.framework.Constants; @@ -133,7 +132,6 @@ public class ComponentProcessor implements ComponentDefinitionRegistryProcessor } } - @SuppressModernizer private void registerManagedService(final String persistentId) { // Register a ManagedService so we get updates from the ConfigAdmin when the cfg file corresponding // to the persistentId changes. diff --git a/opendaylight/config/netty-event-executor-config/pom.xml b/opendaylight/config/netty-event-executor-config/pom.xml index 51035377ad..09c34d3c02 100644 --- a/opendaylight/config/netty-event-executor-config/pom.xml +++ b/opendaylight/config/netty-event-executor-config/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.odlparent bundle-parent - 12.0.6 + 13.0.1 diff --git a/opendaylight/config/netty-threadgroup-config/pom.xml b/opendaylight/config/netty-threadgroup-config/pom.xml index 8e95819285..a6e605f854 100644 --- a/opendaylight/config/netty-threadgroup-config/pom.xml +++ b/opendaylight/config/netty-threadgroup-config/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.odlparent bundle-parent - 12.0.6 + 13.0.1 diff --git a/opendaylight/config/netty-timer-config/pom.xml b/opendaylight/config/netty-timer-config/pom.xml index 1346cef95e..fcd6216bbf 100644 --- a/opendaylight/config/netty-timer-config/pom.xml +++ b/opendaylight/config/netty-timer-config/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.odlparent bundle-parent - 12.0.6 + 13.0.1 @@ -21,6 +21,10 @@ io.netty netty-common + + org.eclipse.jdt + org.eclipse.jdt.annotation + org.osgi org.osgi.service.component.annotations diff --git a/opendaylight/config/pom.xml b/opendaylight/config/pom.xml index e1d91208b4..4fbab2da7e 100644 --- a/opendaylight/config/pom.xml +++ b/opendaylight/config/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.odlparent odlparent-lite - 12.0.6 + 13.0.1 diff --git a/opendaylight/config/threadpool-config-api/pom.xml b/opendaylight/config/threadpool-config-api/pom.xml index 28221856b9..b513589fb9 100644 --- a/opendaylight/config/threadpool-config-api/pom.xml +++ b/opendaylight/config/threadpool-config-api/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.odlparent bundle-parent - 12.0.6 + 13.0.1 diff --git a/opendaylight/config/threadpool-config-impl/pom.xml b/opendaylight/config/threadpool-config-impl/pom.xml index 5bc8e3f9b6..fac3236752 100644 --- a/opendaylight/config/threadpool-config-impl/pom.xml +++ b/opendaylight/config/threadpool-config-impl/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.odlparent bundle-parent - 12.0.6 + 13.0.1 diff --git a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/ABIVersion.java b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/ABIVersion.java index 119d477cc6..4658f3b754 100644 --- a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/ABIVersion.java +++ b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/ABIVersion.java @@ -40,15 +40,16 @@ public enum ABIVersion implements WritableObject { // NEON_SR2 was 6 // SODIUM_SR1 was 7 // MAGNESIUM was 8 + // CHLORINE_SR2 was 9 /** - * Oldest ABI version we support. The messages remain the same as {@code MAGNESIUM}, the serialization proxies in - * use are flat objects without any superclasses. + * Oldest ABI version we support. The messages remain the same as {@code CHLORINE_SR2}, the serialization proxies in + * use are flat objects without any superclasses. Data encoding does not include augmentations as separate objects. */ - CHLORINE_SR2(9) { + POTASSIUM(10) { @Override public NormalizedNodeStreamVersion getStreamVersion() { - return NormalizedNodeStreamVersion.MAGNESIUM; + return NormalizedNodeStreamVersion.POTASSIUM; } }, @@ -88,7 +89,7 @@ public enum ABIVersion implements WritableObject { * @return Current {@link ABIVersion} */ public static @NonNull ABIVersion current() { - return CHLORINE_SR2; + return POTASSIUM; } /** @@ -102,9 +103,9 @@ public enum ABIVersion implements WritableObject { */ public static @NonNull ABIVersion valueOf(final short value) throws FutureVersionException, PastVersionException { return switch (Short.toUnsignedInt(value)) { - case 0, 1, 2, 3, 4, 6, 7, 8 -> throw new PastVersionException(value, CHLORINE_SR2); - case 9 -> CHLORINE_SR2; - default -> throw new FutureVersionException(value, CHLORINE_SR2); + case 0, 1, 2, 3, 4, 6, 7, 8, 9 -> throw new PastVersionException(value, POTASSIUM); + case 10 -> POTASSIUM; + default -> throw new FutureVersionException(value, POTASSIUM); }; } diff --git a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/concepts/Message.java b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/concepts/Message.java index ec10da1c65..3c8ce59b89 100644 --- a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/concepts/Message.java +++ b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/concepts/Message.java @@ -146,12 +146,12 @@ public abstract class Message verifyNotNull(cloneAsVersion(toVersion)); + case POTASSIUM -> verifyNotNull(cloneAsVersion(toVersion)); default -> throw new IllegalArgumentException("Unhandled ABI version " + toVersion); }; } diff --git a/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/ABIVersionTest.java b/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/ABIVersionTest.java index a48e83d1b7..1513f36396 100644 --- a/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/ABIVersionTest.java +++ b/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/ABIVersionTest.java @@ -10,7 +10,7 @@ package org.opendaylight.controller.cluster.access; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertThrows; import static org.junit.Assert.assertTrue; -import static org.opendaylight.controller.cluster.access.ABIVersion.CHLORINE_SR2; +import static org.opendaylight.controller.cluster.access.ABIVersion.POTASSIUM; import static org.opendaylight.controller.cluster.access.ABIVersion.TEST_FUTURE_VERSION; import static org.opendaylight.controller.cluster.access.ABIVersion.TEST_PAST_VERSION; @@ -23,15 +23,15 @@ public class ABIVersionTest { @Test public void testInvalidVersions() { assertTrue(TEST_PAST_VERSION.compareTo(TEST_FUTURE_VERSION) < 0); - assertTrue(TEST_PAST_VERSION.compareTo(CHLORINE_SR2) < 0); - assertTrue(TEST_FUTURE_VERSION.compareTo(CHLORINE_SR2) > 0); + assertTrue(TEST_PAST_VERSION.compareTo(POTASSIUM) < 0); + assertTrue(TEST_FUTURE_VERSION.compareTo(POTASSIUM) > 0); } @Test public void testMagnesiumVersion() throws Exception { - assertEquals((short)9, CHLORINE_SR2.shortValue()); - assertEquals(CHLORINE_SR2, ABIVersion.valueOf(CHLORINE_SR2.shortValue())); - assertEquals(CHLORINE_SR2, ABIVersion.readFrom(ByteStreams.newDataInput(writeVersion(CHLORINE_SR2)))); + assertEquals((short)10, POTASSIUM.shortValue()); + assertEquals(POTASSIUM, ABIVersion.valueOf(POTASSIUM.shortValue())); + assertEquals(POTASSIUM, ABIVersion.readFrom(ByteStreams.newDataInput(writeVersion(POTASSIUM)))); } @Test diff --git a/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/AbstractReadTransactionRequestTest.java b/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/AbstractReadTransactionRequestTest.java index df8407b3f0..5ae7219888 100644 --- a/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/AbstractReadTransactionRequestTest.java +++ b/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/AbstractReadTransactionRequestTest.java @@ -17,7 +17,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; public abstract class AbstractReadTransactionRequestTest> extends AbstractTransactionRequestTest { - protected static final YangInstanceIdentifier PATH = YangInstanceIdentifier.empty(); + protected static final YangInstanceIdentifier PATH = YangInstanceIdentifier.of(); protected static final boolean SNAPSHOT_ONLY = true; protected AbstractReadTransactionRequestTest(final T object, final int baseSize) { diff --git a/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/ModifyTransactionRequestBuilderTest.java b/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/ModifyTransactionRequestBuilderTest.java index e8f7bc1890..7e18f2c1d7 100644 --- a/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/ModifyTransactionRequestBuilderTest.java +++ b/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/ModifyTransactionRequestBuilderTest.java @@ -39,7 +39,7 @@ public class ModifyTransactionRequestBuilderTest { private final NormalizedNode node = Builders.containerBuilder().withNodeIdentifier( YangInstanceIdentifier.NodeIdentifier.create(QName.create("namespace", "localName"))).build(); private final TransactionModification transactionModification = - new TransactionWrite(YangInstanceIdentifier.empty(), node); + new TransactionWrite(YangInstanceIdentifier.of(), node); private final ModifyTransactionRequestBuilder modifyTransactionRequestBuilder = new ModifyTransactionRequestBuilder(transactionIdentifier, actorRef); diff --git a/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/ModifyTransactionRequestTest.java b/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/ModifyTransactionRequestTest.java index ec3838cf54..005d5a5855 100644 --- a/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/ModifyTransactionRequestTest.java +++ b/opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/ModifyTransactionRequestTest.java @@ -29,7 +29,7 @@ public class ModifyTransactionRequestTest extends AbstractTransactionRequestTest NodeIdentifier.create(QName.create("namespace", "localName"))).build(); private static final List MODIFICATIONS = List.of( - new TransactionWrite(YangInstanceIdentifier.empty(), NODE)); + new TransactionWrite(YangInstanceIdentifier.of(), NODE)); private static final PersistenceProtocol PROTOCOL = PersistenceProtocol.ABORT; @@ -74,7 +74,7 @@ public class ModifyTransactionRequestTest extends AbstractTransactionRequestTest assertNotNull(deserialize.getModifications()); assertEquals(1, deserialize.getModifications().size()); final var modification = deserialize.getModifications().get(0); - assertEquals(YangInstanceIdentifier.empty(), modification.getPath()); + assertEquals(YangInstanceIdentifier.of(), modification.getPath()); assertEquals(TYPE_WRITE, modification.getType()); } } diff --git a/opendaylight/md-sal/cds-access-client/pom.xml b/opendaylight/md-sal/cds-access-client/pom.xml index 819d0015de..3889435cc2 100644 --- a/opendaylight/md-sal/cds-access-client/pom.xml +++ b/opendaylight/md-sal/cds-access-client/pom.xml @@ -12,6 +12,11 @@ bundle + + com.github.spotbugs + spotbugs-annotations + true + com.google.guava guava diff --git a/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/ConnectedClientConnectionTest.java b/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/ConnectedClientConnectionTest.java index f1f6fa1cc1..e2a9574e5d 100644 --- a/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/ConnectedClientConnectionTest.java +++ b/opendaylight/md-sal/cds-access-client/src/test/java/org/opendaylight/controller/cluster/access/client/ConnectedClientConnectionTest.java @@ -70,7 +70,7 @@ public class ConnectedClientConnectionTest new TransactionIdentifier(new LocalHistoryIdentifier(CLIENT_ID, 0L), 0L); ModifyTransactionRequestBuilder reqBuilder = new ModifyTransactionRequestBuilder(identifier, replyToProbe.ref()); - reqBuilder.addModification(new TransactionWrite(YangInstanceIdentifier.empty(), Builders.containerBuilder() + reqBuilder.addModification(new TransactionWrite(YangInstanceIdentifier.of(), Builders.containerBuilder() .withNodeIdentifier(YangInstanceIdentifier.NodeIdentifier.create( QName.create("namespace", "localName"))).build())); reqBuilder.setSequence(0L); diff --git a/opendaylight/md-sal/cds-mgmt-api/pom.xml b/opendaylight/md-sal/cds-mgmt-api/pom.xml index 69dc54eaf1..940cb1e6d3 100644 --- a/opendaylight/md-sal/cds-mgmt-api/pom.xml +++ b/opendaylight/md-sal/cds-mgmt-api/pom.xml @@ -11,6 +11,13 @@ cds-mgmt-api bundle + + + org.eclipse.jdt + org.eclipse.jdt.annotation + + + diff --git a/opendaylight/md-sal/mdsal-it-base/pom.xml b/opendaylight/md-sal/mdsal-it-base/pom.xml index e7f3d4ec55..a1f3532a26 100644 --- a/opendaylight/md-sal/mdsal-it-base/pom.xml +++ b/opendaylight/md-sal/mdsal-it-base/pom.xml @@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html org.opendaylight.odlparent bundle-parent - 12.0.6 + 13.0.1 @@ -26,7 +26,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html org.opendaylight.mdsal mdsal-artifacts - 11.0.11 + 12.0.0-SNAPSHOT pom import diff --git a/opendaylight/md-sal/mdsal-it-parent/pom.xml b/opendaylight/md-sal/mdsal-it-parent/pom.xml index c930662fd8..175d375a51 100644 --- a/opendaylight/md-sal/mdsal-it-parent/pom.xml +++ b/opendaylight/md-sal/mdsal-it-parent/pom.xml @@ -13,7 +13,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html org.opendaylight.odlparent bundle-parent - 12.0.6 + 13.0.1 diff --git a/opendaylight/md-sal/parent/pom.xml b/opendaylight/md-sal/parent/pom.xml index bbe5d3d6e8..07528ff45e 100644 --- a/opendaylight/md-sal/parent/pom.xml +++ b/opendaylight/md-sal/parent/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.mdsal binding-parent - 11.0.11 + 12.0.0-SNAPSHOT diff --git a/opendaylight/md-sal/pom.xml b/opendaylight/md-sal/pom.xml index 03ad872246..62c7442978 100644 --- a/opendaylight/md-sal/pom.xml +++ b/opendaylight/md-sal/pom.xml @@ -5,7 +5,7 @@ org.opendaylight.odlparent odlparent-lite - 12.0.6 + 13.0.1 diff --git a/opendaylight/md-sal/sal-akka-raft-example/pom.xml b/opendaylight/md-sal/sal-akka-raft-example/pom.xml index b4d268c5a3..b46fe36d86 100644 --- a/opendaylight/md-sal/sal-akka-raft-example/pom.xml +++ b/opendaylight/md-sal/sal-akka-raft-example/pom.xml @@ -19,6 +19,11 @@ bundle + + com.github.spotbugs + spotbugs-annotations + true + org.opendaylight.controller sal-akka-raft diff --git a/opendaylight/md-sal/sal-akka-raft/pom.xml b/opendaylight/md-sal/sal-akka-raft/pom.xml index 07ad330246..8cfebdbd1f 100644 --- a/opendaylight/md-sal/sal-akka-raft/pom.xml +++ b/opendaylight/md-sal/sal-akka-raft/pom.xml @@ -12,6 +12,11 @@ bundle + + com.github.spotbugs + spotbugs-annotations + true + com.google.guava guava diff --git a/opendaylight/md-sal/sal-cluster-admin-impl/pom.xml b/opendaylight/md-sal/sal-cluster-admin-impl/pom.xml index f606309e57..ad16fafc46 100644 --- a/opendaylight/md-sal/sal-cluster-admin-impl/pom.xml +++ b/opendaylight/md-sal/sal-cluster-admin-impl/pom.xml @@ -12,6 +12,11 @@ bundle + + com.github.spotbugs + spotbugs-annotations + true + com.google.guava guava diff --git a/opendaylight/md-sal/sal-clustering-commons/pom.xml b/opendaylight/md-sal/sal-clustering-commons/pom.xml index 1af07453fd..bc09f8d33b 100644 --- a/opendaylight/md-sal/sal-clustering-commons/pom.xml +++ b/opendaylight/md-sal/sal-clustering-commons/pom.xml @@ -79,6 +79,11 @@ io.dropwizard.metrics metrics-jmx + + com.github.spotbugs + spotbugs-annotations + true + com.guicedee.services javax.inject diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/NormalizedNodeNavigator.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/NormalizedNodeNavigator.java index 0c0029d26c..19df464f9e 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/NormalizedNodeNavigator.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/NormalizedNodeNavigator.java @@ -35,7 +35,7 @@ public class NormalizedNodeNavigator { final DataContainerNode dataContainerNode) { visitor.visitNode(level, parentPath, dataContainerNode); - String newParentPath = parentPath + "/" + dataContainerNode.getIdentifier().toString(); + String newParentPath = parentPath + "/" + dataContainerNode.name().toString(); for (var node : dataContainerNode.body()) { if (node instanceof MixinNode && node instanceof NormalizedNodeContainer container) { @@ -50,7 +50,7 @@ public class NormalizedNodeNavigator { final NormalizedNodeContainer node) { visitor.visitNode(level, parentPath, node); - String newParentPath = parentPath + "/" + node.getIdentifier().toString(); + String newParentPath = parentPath + "/" + node.name().toString(); for (var normalizedNode : node.body()) { if (normalizedNode instanceof MixinNode && normalizedNode instanceof NormalizedNodeContainer container) { diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/SerializationUtils.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/SerializationUtils.java index a2c456d17a..51e61ea47f 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/SerializationUtils.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/SerializationUtils.java @@ -7,8 +7,6 @@ */ package org.opendaylight.controller.cluster.datastore.node.utils.stream; -import static org.opendaylight.yangtools.yang.data.codec.binfmt.NormalizedNodeStreamVersion.MAGNESIUM; - import java.io.DataInput; import java.io.DataOutput; import java.io.IOException; @@ -45,7 +43,7 @@ public final class SerializationUtils { public static void writeNormalizedNode(final DataOutput out, final @Nullable NormalizedNode node) throws IOException { - writeNormalizedNode(out, MAGNESIUM, node); + writeNormalizedNode(out, NormalizedNodeStreamVersion.POTASSIUM, node); } public static void writeNormalizedNode(final DataOutput out, final NormalizedNodeStreamVersion version, @@ -67,7 +65,7 @@ public final class SerializationUtils { public static void writePath(final DataOutput out, final @NonNull YangInstanceIdentifier path) throws IOException { - writePath(out, MAGNESIUM, path); + writePath(out, NormalizedNodeStreamVersion.POTASSIUM, path); } public static void writePath(final DataOutput out, final NormalizedNodeStreamVersion version, @@ -95,7 +93,7 @@ public final class SerializationUtils { public static void writeNodeAndPath(final DataOutput out, final YangInstanceIdentifier path, final NormalizedNode node) throws IOException { - writeNodeAndPath(out, MAGNESIUM, path, node); + writeNodeAndPath(out, NormalizedNodeStreamVersion.POTASSIUM, path, node); } public static void readPathAndNode(final DataInput in, final T instance, final Applier applier) @@ -117,6 +115,6 @@ public final class SerializationUtils { public static void writePathAndNode(final DataOutput out, final YangInstanceIdentifier path, final NormalizedNode node) throws IOException { - writePathAndNode(out, MAGNESIUM, path, node); + writePathAndNode(out, NormalizedNodeStreamVersion.POTASSIUM, path, node); } } diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/AbstractNormalizedNodePruner.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/AbstractNormalizedNodePruner.java index 965b5e1ba9..cee5a0329a 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/AbstractNormalizedNodePruner.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/AbstractNormalizedNodePruner.java @@ -18,7 +18,6 @@ import java.util.NoSuchElementException; import java.util.Optional; import javax.xml.transform.dom.DOMSource; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; -import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeWithValue; @@ -26,7 +25,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgum import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter; import org.opendaylight.yangtools.yang.data.impl.schema.ReusableImmutableNormalizedNodeStreamWriter; -import org.opendaylight.yangtools.yang.data.util.DataSchemaContextNode; +import org.opendaylight.yangtools.yang.data.util.DataSchemaContext; import org.opendaylight.yangtools.yang.data.util.DataSchemaContextTree; import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; @@ -58,12 +57,12 @@ abstract class AbstractNormalizedNodePruner implements NormalizedNodeStreamWrite private static final Logger LOG = LoggerFactory.getLogger(AbstractNormalizedNodePruner.class); - private final Deque> stack = new ArrayDeque<>(); + private final Deque stack = new ArrayDeque<>(); private final ReusableImmutableNormalizedNodeStreamWriter delegate = ReusableImmutableNormalizedNodeStreamWriter.create(); private final DataSchemaContextTree tree; - private DataSchemaContextNode nodePathSchemaNode; + private DataSchemaContext nodePathSchemaNode; private NormalizedNode normalizedNode; private State state = State.UNITIALIZED; private int unknown; @@ -145,11 +144,6 @@ abstract class AbstractNormalizedNodePruner implements NormalizedNodeStreamWrite enter(ReusableImmutableNormalizedNodeStreamWriter::startChoiceNode, name, childSizeHint); } - @Override - public final void startAugmentationNode(final AugmentationIdentifier identifier) throws IOException { - enter(ReusableImmutableNormalizedNodeStreamWriter::startAugmentationNode, identifier); - } - @Override public final boolean startAnyxmlNode(final NodeIdentifier name, final Class objectModel) throws IOException { if (enter(name)) { @@ -181,7 +175,7 @@ abstract class AbstractNormalizedNodePruner implements NormalizedNodeStreamWrite } } - Object translateScalar(final DataSchemaContextNode context, final Object value) { + Object translateScalar(final DataSchemaContext context, final Object value) { // Default is pass-through return value; } @@ -206,7 +200,8 @@ abstract class AbstractNormalizedNodePruner implements NormalizedNodeStreamWrite } if (stack.isEmpty()) { - normalizedNode = delegate.getResult(); + final var result = delegate.result(); + normalizedNode = result != null ? result.data() : null; state = State.CLOSED; } } @@ -247,10 +242,11 @@ abstract class AbstractNormalizedNodePruner implements NormalizedNodeStreamWrite return false; } - final DataSchemaContextNode schema; - final DataSchemaContextNode parent = currentSchema(); + final DataSchemaContext schema; + final DataSchemaContext parent = currentSchema(); if (parent != null) { - schema = parent.getChild(name); + schema = parent instanceof DataSchemaContext.Composite compositeParent ? compositeParent.childByArg(name) + : null; } else { schema = nodePathSchemaNode; } @@ -262,7 +258,7 @@ abstract class AbstractNormalizedNodePruner implements NormalizedNodeStreamWrite } stack.push(schema); - final DataSchemaNode dataSchema = schema.getDataSchemaNode(); + final DataSchemaNode dataSchema = schema.dataSchemaNode(); if (dataSchema != null) { delegate.nextDataSchemaNode(dataSchema); } @@ -282,7 +278,7 @@ abstract class AbstractNormalizedNodePruner implements NormalizedNodeStreamWrite } } - final DataSchemaContextNode currentSchema() { + final DataSchemaContext currentSchema() { return stack.peek(); } } diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/UintAdaptingPruner.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/UintAdaptingPruner.java index eefc0fcb69..4c6c223396 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/UintAdaptingPruner.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/UintAdaptingPruner.java @@ -30,7 +30,7 @@ import org.opendaylight.yangtools.yang.common.Uint8; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeWithValue; import org.opendaylight.yangtools.yang.data.impl.schema.ReusableImmutableNormalizedNodeStreamWriter; -import org.opendaylight.yangtools.yang.data.util.DataSchemaContextNode; +import org.opendaylight.yangtools.yang.data.util.DataSchemaContext; import org.opendaylight.yangtools.yang.data.util.DataSchemaContextTree; import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode; @@ -133,15 +133,14 @@ final class UintAdaptingPruner extends ReusableNormalizedNodePruner { } @Override - Object translateScalar(final DataSchemaContextNode context, final Object value) { - final DataSchemaNode schema = context.getDataSchemaNode(); - return schema instanceof TypedDataSchemaNode ? adaptValue(((TypedDataSchemaNode) schema).getType(), value) - : value; + Object translateScalar(final DataSchemaContext context, final Object value) { + final DataSchemaNode schema = context.dataSchemaNode(); + return schema instanceof TypedDataSchemaNode typed ? adaptValue(typed.getType(), value) : value; } private void adaptEntry(final ReusableImmutableNormalizedNodeStreamWriter writer, final NodeWithValue name) { final NodeWithValue adapted; - final DataSchemaNode schema = currentSchema().getDataSchemaNode(); + final DataSchemaNode schema = currentSchema().dataSchemaNode(); if (schema instanceof TypedDataSchemaNode typed) { final Object oldValue = name.getValue(); final Object newValue = adaptValue(typed.getType(), oldValue); @@ -156,7 +155,7 @@ final class UintAdaptingPruner extends ReusableNormalizedNodePruner { private void adaptEntry(final ReusableImmutableNormalizedNodeStreamWriter writer, final NodeIdentifierWithPredicates name, final int size) { final NodeIdentifierWithPredicates adapted; - final DataSchemaNode schema = currentSchema().getDataSchemaNode(); + final DataSchemaNode schema = currentSchema().dataSchemaNode(); if (schema instanceof ListSchemaNode list) { adapted = NIP_ADAPTERS.getUnchecked(list).apply(name); } else { diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/util/AbstractDataTreeModificationCursor.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/util/AbstractDataTreeModificationCursor.java index 7a1ba9340b..3e299e3d9b 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/util/AbstractDataTreeModificationCursor.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/util/AbstractDataTreeModificationCursor.java @@ -26,7 +26,7 @@ import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModificationCursor; */ @Beta public abstract class AbstractDataTreeModificationCursor implements DataTreeModificationCursor { - private YangInstanceIdentifier current = YangInstanceIdentifier.empty(); + private YangInstanceIdentifier current = YangInstanceIdentifier.of(); protected final YangInstanceIdentifier current() { return current; diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/schema/provider/impl/YangTextSchemaSourceSerializationProxy.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/schema/provider/impl/YangTextSchemaSourceSerializationProxy.java index e2b55c0c87..1d3e3ba31f 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/schema/provider/impl/YangTextSchemaSourceSerializationProxy.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/schema/provider/impl/YangTextSchemaSourceSerializationProxy.java @@ -8,7 +8,7 @@ package org.opendaylight.controller.cluster.schema.provider.impl; import com.google.common.annotations.Beta; -import com.google.common.io.ByteSource; +import com.google.common.io.CharSource; import java.io.IOException; import java.io.Serializable; import org.opendaylight.yangtools.yang.common.Revision; @@ -23,7 +23,7 @@ import org.opendaylight.yangtools.yang.model.repo.api.YangTextSchemaSource; public class YangTextSchemaSourceSerializationProxy implements Serializable { private static final long serialVersionUID = -6361268518176019477L; - private final byte[] schemaSource; + private final String schemaSource; private final Revision revision; private final String name; @@ -35,7 +35,7 @@ public class YangTextSchemaSourceSerializationProxy implements Serializable { } public YangTextSchemaSource getRepresentation() { - return YangTextSchemaSource.delegateForByteSource(new SourceIdentifier(Unqualified.of(name), revision), - ByteSource.wrap(schemaSource)); + return YangTextSchemaSource.delegateForCharSource(new SourceIdentifier(Unqualified.of(name), revision), + CharSource.wrap(schemaSource)); } } diff --git a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/SerializationUtilsTest.java b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/SerializationUtilsTest.java index 2d4751a314..14aa7f42f5 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/SerializationUtilsTest.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/SerializationUtilsTest.java @@ -10,7 +10,6 @@ package org.opendaylight.controller.cluster.datastore.node.utils.stream; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -import com.google.common.collect.ImmutableSet; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.DataInputStream; @@ -18,10 +17,7 @@ import java.io.DataOutput; import java.io.DataOutputStream; import java.io.IOException; import java.nio.charset.Charset; -import java.util.Arrays; -import java.util.Set; import java.util.concurrent.atomic.AtomicBoolean; -import java.util.stream.Collectors; import javax.xml.transform.dom.DOMSource; import org.custommonkey.xmlunit.Diff; import org.custommonkey.xmlunit.XMLUnit; @@ -29,9 +25,9 @@ import org.junit.Test; import org.opendaylight.yangtools.util.xml.UntrustedXML; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; -import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier; -import org.opendaylight.yangtools.yang.data.api.schema.AugmentationNode; +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.ChoiceNode; +import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.DOMSourceAnyxmlNode; import org.opendaylight.yangtools.yang.data.api.schema.LeafNode; import org.opendaylight.yangtools.yang.data.api.schema.LeafSetEntryNode; @@ -52,9 +48,9 @@ public class SerializationUtilsTest { @Test public void testSerializeDeserializeNodes() throws IOException { - final NormalizedNode normalizedNode = createNormalizedNode(); + final ContainerNode normalizedNode = createNormalizedNode(); final byte[] bytes = serializeNormalizedNode(normalizedNode); - assertEquals(10564, bytes.length); + assertEquals(10556, bytes.length); assertEquals(normalizedNode, deserializeNormalizedNode(bytes)); } @@ -82,14 +78,13 @@ public class SerializationUtilsTest { final DataOutput out = new DataOutputStream(bos); final YangInstanceIdentifier path = YangInstanceIdentifier.builder() .node(id("container1")) - .node(autmentationId("list1", "list2")) .node(listId("list1", "keyName1", "keyValue1")) .node(leafSetId("leafSer1", "leafSetValue1")) .build(); SerializationUtils.writePath(out, path); final byte[] bytes = bos.toByteArray(); - assertEquals(119, bytes.length); + assertEquals(105, bytes.length); final YangInstanceIdentifier deserialized = SerializationUtils.readPath(new DataInputStream(new ByteArrayInputStream(bytes))); @@ -101,11 +96,11 @@ public class SerializationUtilsTest { final ByteArrayOutputStream bos = new ByteArrayOutputStream(); final DataOutput out = new DataOutputStream(bos); final NormalizedNode node = createNormalizedNode(); - final YangInstanceIdentifier path = YangInstanceIdentifier.create(id("container1")); + final YangInstanceIdentifier path = YangInstanceIdentifier.of(id("container1")); SerializationUtils.writeNodeAndPath(out, path, node); final byte[] bytes = bos.toByteArray(); - assertEquals(10566, bytes.length); + assertEquals(10558, bytes.length); final DataInputStream in = new DataInputStream(new ByteArrayInputStream(bytes)); final AtomicBoolean applierCalled = new AtomicBoolean(false); @@ -117,25 +112,6 @@ public class SerializationUtilsTest { assertTrue(applierCalled.get()); } - @Test - public void testSerializeDeserializeAugmentNoref() throws IOException { - final YangInstanceIdentifier expected = YangInstanceIdentifier.create( - AugmentationIdentifier.create(ImmutableSet.of( - QName.create("foo", "leaf1"), - QName.create("bar", "leaf2")))); - - final ByteArrayOutputStream bos = new ByteArrayOutputStream(); - final DataOutput out = new DataOutputStream(bos); - SerializationUtils.writePath(out, expected); - - final byte[] bytes = bos.toByteArray(); - assertEquals(37, bytes.length); - - final DataInputStream in = new DataInputStream(new ByteArrayInputStream(bytes)); - final YangInstanceIdentifier read = SerializationUtils.readPath(in); - assertEquals(expected, read); - } - private static NormalizedNode deserializeNormalizedNode(final byte[] bytes) throws IOException { return SerializationUtils.readNormalizedNode(new DataInputStream(new ByteArrayInputStream(bytes))) .orElseThrow(); @@ -147,7 +123,7 @@ public class SerializationUtilsTest { return bos.toByteArray(); } - private static NormalizedNode createNormalizedNode() { + private static ContainerNode createNormalizedNode() { final LeafSetNode leafSetNode = Builders.leafSetBuilder() .withNodeIdentifier(id("leafSetNode")) .withChild(createLeafSetEntry("leafSetNode", "leafSetValue1")) @@ -166,7 +142,7 @@ public class SerializationUtilsTest { final LeafNode stringLeaf = createLeaf("stringLeaf", "stringValue"); final LeafNode longStringLeaf = createLeaf("longStringLeaf", getLongString()); final LeafNode qNameLeaf = createLeaf("stringLeaf", QName.create("base", "qName")); - final LeafNode idLeaf = createLeaf("stringLeaf", YangInstanceIdentifier.empty()); + final LeafNode idLeaf = createLeaf("stringLeaf", YangInstanceIdentifier.of()); final MapEntryNode entry1 = Builders.mapEntryBuilder() .withNodeIdentifier(listId("mapNode", "key", "key1")) .withChild(stringLeaf) @@ -198,19 +174,12 @@ public class SerializationUtilsTest { .withChild(unkeyedListEntry1) .withChild(unkeyedListEntry2) .build(); - final ImmutableSet childNames = - ImmutableSet.of(QName.create(CONTAINER_Q_NAME, "aug1"), QName.create(CONTAINER_Q_NAME, "aug1")); - final AugmentationNode augmentationNode = Builders.augmentationBuilder() - .withNodeIdentifier(new YangInstanceIdentifier.AugmentationIdentifier(childNames)) - .withChild(createLeaf("aug1", "aug1Value")) - .withChild(createLeaf("aug2", "aug2Value")) - .build(); final ChoiceNode choiceNode = Builders.choiceBuilder() .withNodeIdentifier(id("choiceNode")) .withChild(createLeaf("choiceLeaf", 12)) .build(); return Builders.containerBuilder() - .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(CONTAINER_Q_NAME)) + .withNodeIdentifier(new NodeIdentifier(CONTAINER_Q_NAME)) .withChild(booleanLeaf) .withChild(byteLeaf) .withChild(shortLeaf) @@ -225,7 +194,8 @@ public class SerializationUtilsTest { .withChild(unkeyedListNode) .withChild(leafSetNode) .withChild(orderedLeafSetNode) - .withChild(augmentationNode) + .withChild(createLeaf("aug1", "aug1Value")) + .withChild(createLeaf("aug2", "aug2Value")) .withChild(choiceNode) .build(); } @@ -256,13 +226,6 @@ public class SerializationUtilsTest { return new YangInstanceIdentifier.NodeWithValue<>(QName.create(CONTAINER_Q_NAME, node), value); } - private static YangInstanceIdentifier.AugmentationIdentifier autmentationId(final String... nodes) { - final Set qNames = Arrays.stream(nodes) - .map(node -> QName.create(CONTAINER_Q_NAME, node)) - .collect(Collectors.toSet()); - return new YangInstanceIdentifier.AugmentationIdentifier(qNames); - } - private static String getLongString() { final StringBuilder builder = new StringBuilder(10000); for (int i = 0; i < 1000; i++) { diff --git a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/NormalizedNodePrunerTest.java b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/NormalizedNodePrunerTest.java index ed98523df2..14b7bc8568 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/NormalizedNodePrunerTest.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/NormalizedNodePrunerTest.java @@ -15,7 +15,6 @@ import static org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes.ma import static org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes.mapEntryBuilder; import static org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes.mapNodeBuilder; -import com.google.common.collect.Sets; import java.io.IOException; import java.util.Optional; import java.util.concurrent.atomic.AtomicInteger; @@ -26,12 +25,13 @@ import org.mockito.junit.MockitoJUnitRunner; import org.opendaylight.controller.cluster.datastore.node.utils.NormalizedNodeNavigator; import org.opendaylight.controller.cluster.datastore.util.TestModel; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; -import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeWithValue; +import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.DOMSourceAnyxmlNode; import org.opendaylight.yangtools.yang.data.api.schema.LeafNode; import org.opendaylight.yangtools.yang.data.api.schema.LeafSetEntryNode; +import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.MapNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter; @@ -143,12 +143,10 @@ public class NormalizedNodePrunerTest { } final AtomicInteger count = new AtomicInteger(); new NormalizedNodeNavigator((level, parentPath, normalizedNode1) -> { - if (!(normalizedNode1.getIdentifier() instanceof AugmentationIdentifier)) { - if (normalizedNode1.getIdentifier().getNodeType().getNamespace().toString().contains(namespaceFilter)) { - count.incrementAndGet(); - } + if (normalizedNode1.name().getNodeType().getNamespace().toString().contains(namespaceFilter)) { + count.incrementAndGet(); } - }).navigate(YangInstanceIdentifier.empty().toString(), normalizedNode); + }).navigate(YangInstanceIdentifier.of().toString(), normalizedNode); return count.get(); } @@ -163,26 +161,10 @@ public class NormalizedNodePrunerTest { assertEquals("normalizedNode", input, pruner.getResult().orElseThrow()); } - @Test - public void testLeafNodePrunedWhenHasAugmentationParentAndSchemaMissing() throws IOException { - AugmentationIdentifier augId = new AugmentationIdentifier(Sets.newHashSet(TestModel.AUG_CONT_QNAME)); - AbstractNormalizedNodePruner pruner = prunerFullSchema(YangInstanceIdentifier.builder() - .node(TestModel.TEST_QNAME).node(TestModel.AUGMENTED_LIST_QNAME) - .node(TestModel.AUGMENTED_LIST_QNAME).node(augId).build()); - LeafNode child = Builders.leafBuilder().withNodeIdentifier( - new NodeIdentifier(TestModel.INVALID_QNAME)).withValue("test").build(); - NormalizedNode input = Builders.augmentationBuilder().withNodeIdentifier(augId).withChild(child).build(); - NormalizedNodeWriter.forStreamWriter(pruner).write(input); - - NormalizedNode actual = pruner.getResult().orElseThrow(); - assertEquals("normalizedNode", Builders.augmentationBuilder().withNodeIdentifier(augId).build(), actual); - } - @Test public void testLeafNodePrunedWhenHasNoParentAndSchemaMissing() throws IOException { AbstractNormalizedNodePruner pruner = prunerFullSchema(TestModel.TEST_PATH.node(TestModel.INVALID_QNAME)); - NormalizedNode input = Builders.leafBuilder().withNodeIdentifier( - new NodeIdentifier(TestModel.INVALID_QNAME)).withValue("test").build(); + LeafNode input = ImmutableNodes.leafNode(TestModel.INVALID_QNAME, "test"); NormalizedNodeWriter.forStreamWriter(pruner).write(input); assertEquals(Optional.empty(), pruner.getResult()); @@ -191,7 +173,7 @@ public class NormalizedNodePrunerTest { @Test public void testLeafSetEntryNodeNotPrunedWhenHasNoParent() throws IOException { AbstractNormalizedNodePruner pruner = prunerFullSchema(TestModel.TEST_PATH.node(TestModel.SHOE_QNAME)); - NormalizedNode input = Builders.leafSetEntryBuilder().withValue("puma").withNodeIdentifier( + LeafSetEntryNode input = Builders.leafSetEntryBuilder().withValue("puma").withNodeIdentifier( new NodeWithValue<>(TestModel.SHOE_QNAME, "puma")).build(); NormalizedNodeWriter.forStreamWriter(pruner).write(input); @@ -291,7 +273,7 @@ public class NormalizedNodePrunerTest { .node(TestModel.INVALID_QNAME).build(); AbstractNormalizedNodePruner pruner = prunerFullSchema(path); - NormalizedNode input = ImmutableNodes.containerNode(TestModel.INVALID_QNAME); + ContainerNode input = ImmutableNodes.containerNode(TestModel.INVALID_QNAME); NormalizedNodeWriter.forStreamWriter(pruner).write(input); assertEquals(Optional.empty(), pruner.getResult()); @@ -307,11 +289,11 @@ public class NormalizedNodePrunerTest { MapNode innerList = mapNodeBuilder(TestModel.INNER_LIST_QNAME).withChild(mapEntryBuilder( TestModel.INNER_LIST_QNAME, TestModel.NAME_QNAME, "one").withChild( ImmutableNodes.containerNode(TestModel.INVALID_QNAME)).build()).build(); - NormalizedNode input = mapEntryBuilder(TestModel.OUTER_LIST_QNAME, TestModel.ID_QNAME, 1) + MapEntryNode input = mapEntryBuilder(TestModel.OUTER_LIST_QNAME, TestModel.ID_QNAME, 1) .withChild(innerList).build(); NormalizedNodeWriter.forStreamWriter(pruner).write(input); - NormalizedNode expected = mapEntryBuilder(TestModel.OUTER_LIST_QNAME, TestModel.ID_QNAME, 1) + MapEntryNode expected = mapEntryBuilder(TestModel.OUTER_LIST_QNAME, TestModel.ID_QNAME, 1) .withChild(mapNodeBuilder(TestModel.INNER_LIST_QNAME).withChild(mapEntryBuilder( TestModel.INNER_LIST_QNAME, TestModel.NAME_QNAME, "one").build()).build()).build(); NormalizedNode actual = pruner.getResult().orElseThrow(); diff --git a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/UintAdaptingPrunerTest.java b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/UintAdaptingPrunerTest.java index 738dc1ce2d..59ceafba63 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/UintAdaptingPrunerTest.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/UintAdaptingPrunerTest.java @@ -202,9 +202,8 @@ public class UintAdaptingPrunerTest { } private static NormalizedNode prune(final NormalizedNode node) throws IOException { - final ReusableNormalizedNodePruner pruner = ReusableNormalizedNodePruner.forSchemaContext(CONTEXT) - .withUintAdaption(); - pruner.initializeForPath(YangInstanceIdentifier.create(node.getIdentifier())); + final var pruner = ReusableNormalizedNodePruner.forSchemaContext(CONTEXT).withUintAdaption(); + pruner.initializeForPath(YangInstanceIdentifier.of(node.name())); try (NormalizedNodeWriter writer = NormalizedNodeWriter.forStreamWriter(pruner)) { writer.write(node); diff --git a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/util/TestModel.java b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/util/TestModel.java index 62bfe9f116..ca0dbe5245 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/util/TestModel.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/util/TestModel.java @@ -15,12 +15,10 @@ import static org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes.ma import com.google.common.collect.ImmutableSet; import java.io.InputStream; import java.util.List; -import java.util.Set; import org.opendaylight.yangtools.yang.common.Decimal64; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.common.Uint64; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; -import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeWithValue; @@ -171,13 +169,11 @@ public final class TestModel { public static DataContainerNodeBuilder createBaseTestContainerBuilder() { // Create YangInstanceIdentifier with all path arg types. - YangInstanceIdentifier instanceID = YangInstanceIdentifier.create( - new NodeIdentifier(QName.create(TEST_QNAME, "qname")), - NodeIdentifierWithPredicates.of(QName.create(TEST_QNAME, "list-entry"), - QName.create(TEST_QNAME, "key"), 10), - new AugmentationIdentifier(ImmutableSet.of( - QName.create(TEST_QNAME, "aug1"), QName.create(TEST_QNAME, "aug2"))), - new NodeWithValue<>(QName.create(TEST_QNAME, "leaf-list-entry"), "foo")); + YangInstanceIdentifier instanceID = YangInstanceIdentifier.of( + new NodeIdentifier(QName.create(TEST_QNAME, "qname")), + NodeIdentifierWithPredicates.of(QName.create(TEST_QNAME, "list-entry"), + QName.create(TEST_QNAME, "key"), 10), + new NodeWithValue<>(QName.create(TEST_QNAME, "leaf-list-entry"), "foo")); // Create the document return Builders.containerBuilder() @@ -260,12 +256,9 @@ public final class TestModel { return Builders.mapEntryBuilder() .withNodeIdentifier(NodeIdentifierWithPredicates.of(AUGMENTED_LIST_QNAME, ID_QNAME, id)) .withChild(leafNode(ID_QNAME, id)) - .withChild(Builders.augmentationBuilder() - .withNodeIdentifier(new AugmentationIdentifier(Set.of(AUG_CONT_QNAME))) - .withChild(Builders.containerBuilder() - .withNodeIdentifier(new NodeIdentifier(AUG_CONT_QNAME)) - .withChild(leafNode(AUG_NAME_QNAME, name)) - .build()) + .withChild(Builders.containerBuilder() + .withNodeIdentifier(new NodeIdentifier(AUG_CONT_QNAME)) + .withChild(leafNode(AUG_NAME_QNAME, name)) .build()) .build(); } diff --git a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteSchemaProviderTest.java b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteSchemaProviderTest.java index 771c130736..8530f099ca 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteSchemaProviderTest.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteSchemaProviderTest.java @@ -7,7 +7,6 @@ */ package org.opendaylight.controller.cluster.schema.provider.impl; -import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertSame; import static org.junit.Assert.assertThrows; @@ -21,7 +20,6 @@ import com.google.common.io.CharSource; import com.google.common.util.concurrent.ListenableFuture; import com.google.common.util.concurrent.MoreExecutors; import java.io.IOException; -import java.nio.charset.StandardCharsets; import java.util.concurrent.ExecutionException; import org.junit.Before; import org.junit.Test; @@ -45,14 +43,13 @@ public class RemoteSchemaProviderTest { @Test public void getExistingYangTextSchemaSource() throws IOException, InterruptedException, ExecutionException { - YangTextSchemaSource schemaSource = YangTextSchemaSource.delegateForByteSource(ID, - CharSource.wrap("Test").asByteSource(StandardCharsets.UTF_8)); + YangTextSchemaSource schemaSource = YangTextSchemaSource.delegateForCharSource(ID, CharSource.wrap("Test")); doReturn(Futures.successful(new YangTextSchemaSourceSerializationProxy(schemaSource))) .when(mockedRemoteSchemaRepository).getYangTextSchemaSource(ID); YangTextSchemaSource providedSource = remoteSchemaProvider.getSource(ID).get(); assertEquals(ID, providedSource.getIdentifier()); - assertArrayEquals(schemaSource.read(), providedSource.read()); + assertEquals(schemaSource.read(), providedSource.read()); } @Test diff --git a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteYangTextSourceProviderImplTest.java b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteYangTextSourceProviderImplTest.java index 7f60216372..85fe58584b 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteYangTextSourceProviderImplTest.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteYangTextSourceProviderImplTest.java @@ -7,14 +7,13 @@ */ package org.opendaylight.controller.cluster.schema.provider.impl; -import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertSame; import static org.junit.Assert.assertThrows; import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.doReturn; -import com.google.common.io.ByteSource; +import com.google.common.io.CharSource; import com.google.common.util.concurrent.Futures; import java.util.Collections; import java.util.Set; @@ -47,7 +46,7 @@ public class RemoteYangTextSourceProviderImplTest { @Test public void testGetExistingYangTextSchemaSource() throws Exception { - var schemaSource = YangTextSchemaSource.delegateForByteSource(ID, ByteSource.wrap("Test source.".getBytes())); + var schemaSource = YangTextSchemaSource.delegateForCharSource(ID, CharSource.wrap("Test source.")); doReturn(Futures.immediateFuture(schemaSource)).when(mockedLocalRepository) .getSchemaSource(ID, YangTextSchemaSource.class); @@ -56,7 +55,7 @@ public class RemoteYangTextSourceProviderImplTest { assertTrue(retrievedSourceFuture.isCompleted()); var resultSchemaSource = Await.result(retrievedSourceFuture, FiniteDuration.Zero()).getRepresentation(); assertEquals(resultSchemaSource.getIdentifier(), schemaSource.getIdentifier()); - assertArrayEquals(resultSchemaSource.read(), schemaSource.read()); + assertEquals(resultSchemaSource.read(), schemaSource.read()); } @Test diff --git a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/YangTextSourceSerializationProxyTest.java b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/YangTextSourceSerializationProxyTest.java index c943451ae2..7e84a4e8fe 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/YangTextSourceSerializationProxyTest.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/schema/provider/impl/YangTextSourceSerializationProxyTest.java @@ -5,19 +5,16 @@ * 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.controller.cluster.schema.provider.impl; -import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; -import com.google.common.io.ByteSource; +import com.google.common.io.CharSource; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; -import java.nio.charset.StandardCharsets; import org.junit.Before; import org.junit.Test; import org.opendaylight.yangtools.yang.model.repo.api.SourceIdentifier; @@ -28,12 +25,10 @@ public class YangTextSourceSerializationProxyTest { @Before public void setUp() { - String source = "Test source."; - schemaSource = YangTextSchemaSource.delegateForByteSource(new SourceIdentifier("test", "2015-10-30"), - ByteSource.wrap(source.getBytes(StandardCharsets.UTF_8))); + schemaSource = YangTextSchemaSource.delegateForCharSource(new SourceIdentifier("test", "2015-10-30"), + CharSource.wrap("Test source.")); } - @Test public void serializeAndDeserializeProxy() throws ClassNotFoundException, IOException { YangTextSchemaSourceSerializationProxy proxy = new YangTextSchemaSourceSerializationProxy(schemaSource); @@ -43,7 +38,7 @@ public class YangTextSourceSerializationProxyTest { oos.writeObject(proxy); final byte[] bytes = bos.toByteArray(); - assertEquals(353, bytes.length); + assertEquals(333, bytes.length); ObjectInputStream ois = new ObjectInputStream(new ByteArrayInputStream(bytes)); @@ -51,7 +46,7 @@ public class YangTextSourceSerializationProxyTest { (YangTextSchemaSourceSerializationProxy) ois.readObject(); assertEquals(deserializedProxy.getRepresentation().getIdentifier(), proxy.getRepresentation().getIdentifier()); - assertArrayEquals(deserializedProxy.getRepresentation().read(), proxy.getRepresentation().read()); + assertEquals(deserializedProxy.getRepresentation().read(), proxy.getRepresentation().read()); } @Test @@ -60,6 +55,6 @@ public class YangTextSourceSerializationProxyTest { new YangTextSchemaSourceSerializationProxy(schemaSource); assertEquals(serializationProxy.getRepresentation().getIdentifier(), schemaSource.getIdentifier()); - assertArrayEquals(serializationProxy.getRepresentation().read(), schemaSource.read()); + assertEquals(serializationProxy.getRepresentation().read(), schemaSource.read()); } } diff --git a/opendaylight/md-sal/sal-clustering-config/pom.xml b/opendaylight/md-sal/sal-clustering-config/pom.xml index 648dbf1f79..633025684a 100644 --- a/opendaylight/md-sal/sal-clustering-config/pom.xml +++ b/opendaylight/md-sal/sal-clustering-config/pom.xml @@ -12,7 +12,7 @@ org.opendaylight.odlparent odlparent-lite - 12.0.6 + 13.0.1 diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/AbstractDOMBrokerWriteTransaction.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/AbstractDOMBrokerWriteTransaction.java index 5058fbe75f..401121552d 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/AbstractDOMBrokerWriteTransaction.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/AbstractDOMBrokerWriteTransaction.java @@ -82,7 +82,7 @@ public abstract class AbstractDOMBrokerWriteTransaction new ConnectClientRequest(clientId, t, ABIVersion.CHLORINE_SR2, + connectFunction = ExplicitAsk.toScala(t -> new ConnectClientRequest(clientId, t, ABIVersion.POTASSIUM, ABIVersion.current())); } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientSnapshot.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientSnapshot.java index 5ba842aae3..5611a1044f 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientSnapshot.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientSnapshot.java @@ -38,7 +38,7 @@ public class ClientSnapshot extends AbstractClientHandle> readRoot() { return RootScatterGather.gather(parent().actorUtils(), ensureAllProxies() - .map(proxy -> proxy.read(YangInstanceIdentifier.empty()))); + .map(proxy -> proxy.read(YangInstanceIdentifier.of()))); } @Override diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientTransaction.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientTransaction.java index 4fbb49a61d..b2ff5d5184 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientTransaction.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientTransaction.java @@ -69,12 +69,12 @@ public class ClientTransaction extends AbstractClientHandle> readRoot() { return RootScatterGather.gather(parent().actorUtils(), ensureAllProxies() - .map(proxy -> proxy.read(YangInstanceIdentifier.empty()))); + .map(proxy -> proxy.read(YangInstanceIdentifier.of()))); } public void delete(final YangInstanceIdentifier path) { if (path.isEmpty()) { - ensureAllProxies().forEach(proxy -> proxy.delete(YangInstanceIdentifier.empty())); + ensureAllProxies().forEach(proxy -> proxy.delete(YangInstanceIdentifier.of())); } else { ensureProxy(path).delete(path); } @@ -91,7 +91,7 @@ public class ClientTransaction extends AbstractClientHandle scattered.shard().merge(YangInstanceIdentifier.empty(), scattered.container())); + scattered -> scattered.shard().merge(YangInstanceIdentifier.of(), scattered.container())); } } @@ -105,11 +105,11 @@ public class ClientTransaction extends AbstractClientHandle scattered.shard().write(YangInstanceIdentifier.empty(), scattered.container())); + scattered -> scattered.shard().write(YangInstanceIdentifier.of(), scattered.container())); } private AbstractProxyTransaction ensureProxy(final PathArgument childId) { - return ensureProxy(YangInstanceIdentifier.create(childId)); + return ensureProxy(YangInstanceIdentifier.of(childId)); } public DOMStoreThreePhaseCommitCohort ready() { @@ -123,19 +123,11 @@ public class ClientTransaction extends AbstractClientHandle new EmptyTransactionCommitCohort(parent, txId); + case 1 -> new DirectTransactionCommitCohort(parent, txId, toReady.iterator().next()); + default -> new ClientTransactionCommitCohort(parent, txId, toReady); + }; return parent.onTransactionReady(this, cohort); } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DataStoreVersions.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DataStoreVersions.java index eb444f2d8f..996fe1023d 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DataStoreVersions.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DataStoreVersions.java @@ -27,9 +27,12 @@ public final class DataStoreVersions { public static final short FLUORINE_VERSION = 9; @Deprecated public static final short NEON_SR2_VERSION = 10; + @Deprecated public static final short SODIUM_SR1_VERSION = 11; + @Deprecated public static final short PHOSPHORUS_VERSION = 12; - public static final short CURRENT_VERSION = PHOSPHORUS_VERSION; + public static final short POTASSIUM_VERSION = 13; + public static final short CURRENT_VERSION = POTASSIUM_VERSION; private DataStoreVersions() { diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DataTreeCohortActorRegistry.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DataTreeCohortActorRegistry.java index e9ed9f8646..c2a6c78273 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DataTreeCohortActorRegistry.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DataTreeCohortActorRegistry.java @@ -159,26 +159,24 @@ class DataTreeCohortActorRegistry extends AbstractRegistrationTree { private void lookupAndCreateCanCommits(final YangInstanceIdentifier path, final RegistrationTreeNode regNode, final DataTreeCandidateNode candNode) { - if (candNode.getModificationType() == ModificationType.UNMODIFIED) { + if (candNode.modificationType() == ModificationType.UNMODIFIED) { LOG.debug("Skipping unmodified candidate {}", path); return; } - final Collection regs = regNode.getRegistrations(); + final var regs = regNode.getRegistrations(); if (!regs.isEmpty()) { createCanCommits(regs, path, candNode); } - for (final DataTreeCandidateNode candChild : candNode.getChildNodes()) { - if (candChild.getModificationType() != ModificationType.UNMODIFIED) { - final RegistrationTreeNode regChild = - regNode.getExactChild(candChild.getIdentifier()); + for (var candChild : candNode.childNodes()) { + if (candChild.modificationType() != ModificationType.UNMODIFIED) { + final RegistrationTreeNode regChild = regNode.getExactChild(candChild.name()); if (regChild != null) { - lookupAndCreateCanCommits(path.node(candChild.getIdentifier()), regChild, candChild); + lookupAndCreateCanCommits(path.node(candChild.name()), regChild, candChild); } - for (final RegistrationTreeNode rc : regNode - .getInexactChildren(candChild.getIdentifier())) { - lookupAndCreateCanCommits(path.node(candChild.getIdentifier()), rc, candChild); + for (var rc : regNode.getInexactChildren(candChild.name())) { + lookupAndCreateCanCommits(path.node(candChild.name()), rc, candChild); } } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DatastoreContext.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DatastoreContext.java index f9e6cc9ae6..d12364265b 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DatastoreContext.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/DatastoreContext.java @@ -92,7 +92,7 @@ public class DatastoreContext implements ClientActorConfig { private long transactionCreationInitialRateLimit = DEFAULT_TX_CREATION_INITIAL_RATE_LIMIT; private String dataStoreName = UNKNOWN_DATA_STORE_TYPE; private LogicalDatastoreType logicalStoreType = LogicalDatastoreType.OPERATIONAL; - private YangInstanceIdentifier storeRoot = YangInstanceIdentifier.empty(); + private YangInstanceIdentifier storeRoot = YangInstanceIdentifier.of(); private int shardBatchedModificationCount = DEFAULT_SHARD_BATCHED_MODIFICATION_COUNT; private boolean writeOnlyTransactionOptimizationsEnabled = true; private long shardCommitQueueExpiryTimeoutInMillis = DEFAULT_SHARD_COMMIT_QUEUE_EXPIRY_TIMEOUT_IN_MS; diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/RootDataTreeChangeListenerActor.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/RootDataTreeChangeListenerActor.java index 5fef243479..42a2bdb196 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/RootDataTreeChangeListenerActor.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/RootDataTreeChangeListenerActor.java @@ -43,7 +43,7 @@ final class RootDataTreeChangeListenerActor extends DataTreeChangeListenerActor private Deque otherMessages = new ArrayDeque<>(); private RootDataTreeChangeListenerActor(final DOMDataTreeChangeListener listener, final int shardCount) { - super(listener, YangInstanceIdentifier.empty()); + super(listener, YangInstanceIdentifier.of()); this.shardCount = shardCount; } @@ -85,7 +85,7 @@ final class RootDataTreeChangeListenerActor extends DataTreeChangeListenerActor /* * We need to make-pretend that the data coming into the listener is coming from a single logical entity, where * ordering is partially guaranteed (on shard boundaries). The data layout in shards is such that each DataTree - * is rooted at YangInstanceIdentifier.empty(), but their contents vary: + * is rooted at YangInstanceIdentifier.of(), but their contents vary: * * 1) non-default shards contain immediate children of root from one module * 2) default shard contains everything else @@ -116,7 +116,7 @@ final class RootDataTreeChangeListenerActor extends DataTreeChangeListenerActor initial = Iterables.get(changes, 0); } - final NormalizedNode root = initial.getRootNode().getDataAfter().orElseThrow(); + final NormalizedNode root = initial.getRootNode().findDataAfter().orElseThrow(); verify(root instanceof ContainerNode, "Unexpected root node %s", root); ((ContainerNode) root).body().forEach(rootBuilder::withChild); } @@ -125,7 +125,7 @@ final class RootDataTreeChangeListenerActor extends DataTreeChangeListenerActor initialMessages = null; // Replace first element with the combined initial change, report initial changes and clear the map - initialChanges.set(0, DataTreeCandidates.newDataTreeCandidate(YangInstanceIdentifier.empty(), + initialChanges.set(0, DataTreeCandidates.newDataTreeCandidate(YangInstanceIdentifier.of(), DataTreeCandidateNodes.written(rootBuilder.build()))); super.dataTreeChanged(new DataTreeChanged(initialChanges)); diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/RootDataTreeChangeListenerProxy.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/RootDataTreeChangeListenerProxy.java index 704d6dd11e..0246049fc7 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/RootDataTreeChangeListenerProxy.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/RootDataTreeChangeListenerProxy.java @@ -153,7 +153,7 @@ final class RootDataTreeChangeListenerProxy // Subscribe to all shards final RegisterDataTreeChangeListener regMessage = new RegisterDataTreeChangeListener( - YangInstanceIdentifier.empty(), dtclActor, true); + YangInstanceIdentifier.of(), dtclActor, true); for (Entry entry : localShards.entrySet()) { // Do not retain references to localShards final String shardName = entry.getKey(); diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTree.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTree.java index 9ab07d3f89..1cc97ac044 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTree.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTree.java @@ -199,7 +199,7 @@ public class ShardDataTree extends ShardDataTreeTransactionParent { @VisibleForTesting public ShardDataTree(final Shard shard, final EffectiveModelContext schemaContext, final TreeType treeType) { - this(shard, schemaContext, treeType, YangInstanceIdentifier.empty(), + this(shard, schemaContext, treeType, YangInstanceIdentifier.of(), new DefaultShardDataTreeChangeListenerPublisher(""), ""); } @@ -236,7 +236,7 @@ public class ShardDataTree extends ShardDataTreeTransactionParent { * @return A state snapshot */ @NonNull ShardDataTreeSnapshot takeStateSnapshot() { - final NormalizedNode rootNode = takeSnapshot().readNode(YangInstanceIdentifier.empty()).orElseThrow(); + final NormalizedNode rootNode = takeSnapshot().readNode(YangInstanceIdentifier.of()).orElseThrow(); final Builder>, ShardDataTreeSnapshotMetadata> metaBuilder = ImmutableMap.builder(); @@ -281,12 +281,12 @@ public class ShardDataTree extends ShardDataTreeTransactionParent { final DataTreeModification unwrapped = newModification(); final DataTreeModification mod = wrapper.apply(unwrapped); // delete everything first - mod.delete(YangInstanceIdentifier.empty()); + mod.delete(YangInstanceIdentifier.of()); final Optional maybeNode = snapshot.getRootNode(); if (maybeNode.isPresent()) { // Add everything from the remote node back - mod.write(YangInstanceIdentifier.empty(), maybeNode.orElseThrow()); + mod.write(YangInstanceIdentifier.of(), maybeNode.orElseThrow()); } mod.ready(); @@ -499,8 +499,7 @@ public class ShardDataTree extends ShardDataTreeTransactionParent { } // top level container ie "/" - if (candidate.getRootPath().isEmpty() - && candidate.getRootNode().getModificationType() == ModificationType.WRITE) { + if (candidate.getRootPath().isEmpty() && candidate.getRootNode().modificationType() == ModificationType.WRITE) { LOG.debug("{}: shard root overwritten, enqueuing snapshot", logContext); shard.self().tell(new InitiateCaptureSnapshot(), noSender()); } @@ -732,8 +731,8 @@ public class ShardDataTree extends ShardDataTreeTransactionParent { } final Optional readCurrentData() { - return readNode(YangInstanceIdentifier.empty()) - .map(state -> DataTreeCandidates.fromNormalizedNode(YangInstanceIdentifier.empty(), state)); + return readNode(YangInstanceIdentifier.of()) + .map(state -> DataTreeCandidates.fromNormalizedNode(YangInstanceIdentifier.of(), state)); } final void registerTreeChangeListener(final YangInstanceIdentifier path, final DOMDataTreeChangeListener listener, diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/TransactionProxy.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/TransactionProxy.java index 43bf09eb8a..d9fc2df8ac 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/TransactionProxy.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/TransactionProxy.java @@ -55,7 +55,7 @@ public class TransactionProxy extends AbstractDOMStoreTransaction txContextWrappers = new TreeMap<>(); private final AbstractTransactionContextFactory txContextFactory; @@ -111,7 +111,7 @@ public class TransactionProxy extends AbstractDOMStoreTransaction> readAllData() { final var actorUtils = getActorUtils(); return RootScatterGather.gather(actorUtils, actorUtils.getConfiguration().getAllShardNames().stream() - .map(shardName -> singleShardRead(shardName, YangInstanceIdentifier.empty()))); + .map(shardName -> singleShardRead(shardName, YangInstanceIdentifier.of()))); } @Override @@ -146,7 +146,7 @@ public class TransactionProxy extends AbstractDOMStoreTransaction scattered.shard().maybeExecuteTransactionOperation( - new MergeOperation(YangInstanceIdentifier.empty(), scattered.container()))); + new MergeOperation(YangInstanceIdentifier.of(), scattered.container()))); } } @@ -165,7 +165,7 @@ public class TransactionProxy extends AbstractDOMStoreTransaction scattered.shard().maybeExecuteTransactionOperation( - new WriteOperation(YangInstanceIdentifier.empty(), scattered.container()))); + new WriteOperation(YangInstanceIdentifier.of(), scattered.container()))); } private void executeModification(final TransactionModificationOperation operation) { @@ -217,20 +217,15 @@ public class TransactionProxy extends AbstractDOMStoreTransaction ret; - switch (txContextWrappers.size()) { - case 0: - ret = NoOpDOMStoreThreePhaseCommitCohort.INSTANCE; - break; - case 1: + final AbstractThreePhaseCommitCohort ret = switch (txContextWrappers.size()) { + case 0 -> NoOpDOMStoreThreePhaseCommitCohort.INSTANCE; + case 1 -> { final Entry e = Iterables.getOnlyElement( txContextWrappers.entrySet()); - ret = createSingleCommitCohort(e.getKey(), e.getValue()); - break; - default: - ret = createMultiCommitCohort(); - } - + yield createSingleCommitCohort(e.getKey(), e.getValue()); + } + default -> createMultiCommitCohort(); + }; txContextFactory.onTransactionReady(getIdentifier(), ret.getCohortFutures()); final Throwable debugContext = getDebugContext(); @@ -300,7 +295,7 @@ public class TransactionProxy extends AbstractDOMStoreTransaction) root); @@ -171,11 +171,11 @@ public final class JsonExportActor extends AbstractUntypedActor { private static void doWriteNode(final JsonWriter writer, final YangInstanceIdentifier path, final DataTreeCandidateNode node) throws IOException { - switch (node.getModificationType()) { + switch (node.modificationType()) { case APPEARED: case DISAPPEARED: case SUBTREE_MODIFIED: - NodeIterator iterator = new NodeIterator(null, path, node.getChildNodes().iterator()); + NodeIterator iterator = new NodeIterator(null, path, node.childNodes().iterator()); do { iterator = iterator.next(writer); } while (iterator != null); @@ -192,14 +192,14 @@ public final class JsonExportActor extends AbstractUntypedActor { private static void outputNodeInfo(final JsonWriter writer, final YangInstanceIdentifier path, final DataTreeCandidateNode node) throws IOException { - final ModificationType modificationType = node.getModificationType(); + final ModificationType modificationType = node.modificationType(); writer.beginObject().name("Node"); writer.beginArray(); writer.beginObject().name("Path").value(path.toString()).endObject(); writer.beginObject().name("ModificationType").value(modificationType.toString()).endObject(); if (modificationType == ModificationType.WRITE) { - writer.beginObject().name("Data").value(node.getDataAfter().orElseThrow().body().toString()).endObject(); + writer.beginObject().name("Data").value(node.findDataAfter().orElseThrow().body().toString()).endObject(); } writer.endArray(); writer.endObject(); @@ -211,7 +211,7 @@ public final class JsonExportActor extends AbstractUntypedActor { writer.beginArray(); writer.beginObject().name("Path").value(path.toString()).endObject(); writer.beginObject().name("ModificationType") - .value("UNSUPPORTED MODIFICATION: " + node.getModificationType()).endObject(); + .value("UNSUPPORTED MODIFICATION: " + node.modificationType()).endObject(); writer.endArray(); writer.endObject(); } @@ -239,13 +239,13 @@ public final class JsonExportActor extends AbstractUntypedActor { NodeIterator next(final JsonWriter writer) throws IOException { while (iterator.hasNext()) { final DataTreeCandidateNode node = iterator.next(); - final YangInstanceIdentifier child = path.node(node.getIdentifier()); + final YangInstanceIdentifier child = path.node(node.name()); - switch (node.getModificationType()) { + switch (node.modificationType()) { case APPEARED: case DISAPPEARED: case SUBTREE_MODIFIED: - return new NodeIterator(this, child, node.getChildNodes().iterator()); + return new NodeIterator(this, child, node.childNodes().iterator()); case DELETE: case UNMODIFIED: case WRITE: diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/VersionedExternalizableMessage.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/VersionedExternalizableMessage.java index 687905d722..42e7399bea 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/VersionedExternalizableMessage.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/VersionedExternalizableMessage.java @@ -38,7 +38,9 @@ public abstract class VersionedExternalizableMessage implements Externalizable, } protected final @NonNull NormalizedNodeStreamVersion getStreamVersion() { - if (version >= DataStoreVersions.PHOSPHORUS_VERSION) { + if (version >= DataStoreVersions.POTASSIUM_VERSION) { + return NormalizedNodeStreamVersion.POTASSIUM; + } else if (version >= DataStoreVersions.PHOSPHORUS_VERSION) { return NormalizedNodeStreamVersion.MAGNESIUM; } else if (version == DataStoreVersions.SODIUM_SR1_VERSION) { return NormalizedNodeStreamVersion.SODIUM_SR1; diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/AbstractDataTreeCandidateNode.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/AbstractDataTreeCandidateNode.java index 0a7d34b79c..a5c9963b68 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/AbstractDataTreeCandidateNode.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/AbstractDataTreeCandidateNode.java @@ -10,7 +10,7 @@ package org.opendaylight.controller.cluster.datastore.persisted; import static java.util.Objects.requireNonNull; import java.util.Collection; -import java.util.Optional; +import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; @@ -24,41 +24,41 @@ import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; * this component. */ abstract class AbstractDataTreeCandidateNode implements DataTreeCandidateNode { - private final ModificationType type; + private final @NonNull ModificationType type; protected AbstractDataTreeCandidateNode(final ModificationType type) { this.type = requireNonNull(type); } @Override - public final Optional getModifiedChild(final PathArgument identifier) { + public final DataTreeCandidateNode modifiedChild(final PathArgument identifier) { throw new UnsupportedOperationException("Not implemented"); } @Override - public final ModificationType getModificationType() { + public final ModificationType modificationType() { return type; } @Override - public final Optional getDataBefore() { + public final NormalizedNode dataBefore() { throw new UnsupportedOperationException("Before-image not available after serialization"); } static DataTreeCandidateNode createUnmodified() { return new AbstractDataTreeCandidateNode(ModificationType.UNMODIFIED) { @Override - public PathArgument getIdentifier() { + public PathArgument name() { throw new UnsupportedOperationException("Root node does not have an identifier"); } @Override - public Optional getDataAfter() { + public NormalizedNode dataAfter() { throw new UnsupportedOperationException("After-image not available after serialization"); } @Override - public Collection getChildNodes() { + public Collection childNodes() { throw new UnsupportedOperationException("Children not available after serialization"); } }; diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/AbstractVersionedShardDataTreeSnapshot.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/AbstractVersionedShardDataTreeSnapshot.java index 2d36ead727..e87ce58a8b 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/AbstractVersionedShardDataTreeSnapshot.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/AbstractVersionedShardDataTreeSnapshot.java @@ -31,10 +31,9 @@ abstract class AbstractVersionedShardDataTreeSnapshot extends ShardDataTreeSnaps static @NonNull ShardSnapshotState versionedDeserialize(final ObjectInput in) throws IOException { final PayloadVersion version = PayloadVersion.readFrom(in); switch (version) { - case SODIUM_SR1: - case MAGNESIUM: - return new ShardSnapshotState(readSnapshot(in), true); case CHLORINE_SR2: + return new ShardSnapshotState(readSnapshot(in), true); + case POTASSIUM: return new ShardSnapshotState(readSnapshot(in), false); case TEST_FUTURE_VERSION: case TEST_PAST_VERSION: @@ -76,10 +75,9 @@ abstract class AbstractVersionedShardDataTreeSnapshot extends ShardDataTreeSnaps private void versionedSerialize(final ObjectOutput out, final PayloadVersion version) throws IOException { switch (version) { - case SODIUM_SR1: - case MAGNESIUM: case CHLORINE_SR2: - // Sodium and Magnesium snapshots use Java Serialization, but differ in stream format + case POTASSIUM: + // Sodium onwards snapshots use Java Serialization, but differ in stream format out.writeObject(this); return; case TEST_FUTURE_VERSION: diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/DataTreeCandidateInputOutput.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/DataTreeCandidateInputOutput.java index 0771b439e2..3737b08b42 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/DataTreeCandidateInputOutput.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/DataTreeCandidateInputOutput.java @@ -148,29 +148,29 @@ public final class DataTreeCandidateInputOutput { private static void writeNode(final NormalizedNodeDataOutput out, final DataTreeCandidateNode node) throws IOException { - switch (node.getModificationType()) { + switch (node.modificationType()) { case APPEARED: out.writeByte(APPEARED); - out.writePathArgument(node.getIdentifier()); - writeChildren(out, node.getChildNodes()); + out.writePathArgument(node.name()); + writeChildren(out, node.childNodes()); break; case DELETE: out.writeByte(DELETE); - out.writePathArgument(node.getIdentifier()); + out.writePathArgument(node.name()); break; case DISAPPEARED: out.writeByte(DISAPPEARED); - out.writePathArgument(node.getIdentifier()); - writeChildren(out, node.getChildNodes()); + out.writePathArgument(node.name()); + writeChildren(out, node.childNodes()); break; case SUBTREE_MODIFIED: out.writeByte(SUBTREE_MODIFIED); - out.writePathArgument(node.getIdentifier()); - writeChildren(out, node.getChildNodes()); + out.writePathArgument(node.name()); + writeChildren(out, node.childNodes()); break; case WRITE: out.writeByte(WRITE); - out.writeNormalizedNode(node.getDataAfter().orElseThrow()); + out.writeNormalizedNode(node.findDataAfter().orElseThrow()); break; case UNMODIFIED: out.writeByte(UNMODIFIED); @@ -187,28 +187,28 @@ public final class DataTreeCandidateInputOutput { writer.writeYangInstanceIdentifier(candidate.getRootPath()); final DataTreeCandidateNode node = candidate.getRootNode(); - switch (node.getModificationType()) { + switch (node.modificationType()) { case APPEARED: writer.writeByte(APPEARED); - writeChildren(writer, node.getChildNodes()); + writeChildren(writer, node.childNodes()); break; case DELETE: writer.writeByte(DELETE); break; case DISAPPEARED: writer.writeByte(DISAPPEARED); - writeChildren(writer, node.getChildNodes()); + writeChildren(writer, node.childNodes()); break; case SUBTREE_MODIFIED: writer.writeByte(SUBTREE_MODIFIED); - writeChildren(writer, node.getChildNodes()); + writeChildren(writer, node.childNodes()); break; case UNMODIFIED: writer.writeByte(UNMODIFIED); break; case WRITE: writer.writeByte(WRITE); - writer.writeNormalizedNode(node.getDataAfter().orElseThrow()); + writer.writeNormalizedNode(node.findDataAfter().orElseThrow()); break; default: throwUnhandledNodeType(node); @@ -222,6 +222,6 @@ public final class DataTreeCandidateInputOutput { } private static void throwUnhandledNodeType(final DataTreeCandidateNode node) { - throw new IllegalArgumentException("Unhandled node type " + node.getModificationType()); + throw new IllegalArgumentException("Unhandled node type " + node.modificationType()); } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/DeletedDataTreeCandidateNode.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/DeletedDataTreeCandidateNode.java index 30b108ce41..54e9e98d51 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/DeletedDataTreeCandidateNode.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/DeletedDataTreeCandidateNode.java @@ -8,7 +8,6 @@ package org.opendaylight.controller.cluster.datastore.persisted; import java.util.Collection; -import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; @@ -25,7 +24,7 @@ abstract class DeletedDataTreeCandidateNode extends AbstractDataTreeCandidateNod static DataTreeCandidateNode create() { return new DeletedDataTreeCandidateNode() { @Override - public PathArgument getIdentifier() { + public PathArgument name() { throw new UnsupportedOperationException("Root node does not have an identifier"); } }; @@ -34,21 +33,20 @@ abstract class DeletedDataTreeCandidateNode extends AbstractDataTreeCandidateNod static DataTreeCandidateNode create(final PathArgument identifier) { return new DeletedDataTreeCandidateNode() { @Override - public PathArgument getIdentifier() { + public PathArgument name() { return identifier; } }; } @Override - public final Optional getDataAfter() { - return Optional.empty(); + public final NormalizedNode dataAfter() { + return null; } @Override - public final Collection getChildNodes() { - // We would require the before-image to reconstruct the list of nodes which - // were deleted. + public final Collection childNodes() { + // We would require the before-image to reconstruct the list of nodes which were deleted. throw new UnsupportedOperationException("Children not available after serialization"); } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/MetadataShardDataTreeSnapshot.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/MetadataShardDataTreeSnapshot.java index 1c9b5d19b6..f1a0d7c554 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/MetadataShardDataTreeSnapshot.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/MetadataShardDataTreeSnapshot.java @@ -57,7 +57,7 @@ public final class MetadataShardDataTreeSnapshot extends AbstractVersionedShardD @Override PayloadVersion version() { - return PayloadVersion.CHLORINE_SR2; + return PayloadVersion.POTASSIUM; } @java.io.Serial diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/ModifiedDataTreeCandidateNode.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/ModifiedDataTreeCandidateNode.java index c63424264d..8c771886f8 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/ModifiedDataTreeCandidateNode.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/ModifiedDataTreeCandidateNode.java @@ -10,7 +10,7 @@ package org.opendaylight.controller.cluster.datastore.persisted; import static java.util.Objects.requireNonNull; import java.util.Collection; -import java.util.Optional; +import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; @@ -21,7 +21,7 @@ import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; * one of its children. */ abstract class ModifiedDataTreeCandidateNode extends AbstractDataTreeCandidateNode { - private final Collection children; + private final @NonNull Collection children; private ModifiedDataTreeCandidateNode(final ModificationType type, final Collection children) { @@ -32,7 +32,7 @@ abstract class ModifiedDataTreeCandidateNode extends AbstractDataTreeCandidateNo static DataTreeCandidateNode create(final ModificationType type, final Collection children) { return new ModifiedDataTreeCandidateNode(type, children) { @Override - public PathArgument getIdentifier() { + public PathArgument name() { throw new UnsupportedOperationException("Root node does not have an identifier"); } }; @@ -42,19 +42,19 @@ abstract class ModifiedDataTreeCandidateNode extends AbstractDataTreeCandidateNo final Collection children) { return new ModifiedDataTreeCandidateNode(type, children) { @Override - public PathArgument getIdentifier() { + public PathArgument name() { return identifier; } }; } @Override - public final Optional getDataAfter() { + public final NormalizedNode dataAfter() { throw new UnsupportedOperationException("After-image not available after serialization"); } @Override - public final Collection getChildNodes() { + public final Collection childNodes() { return children; } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/PayloadVersion.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/PayloadVersion.java index 14b8951806..298f835c5c 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/PayloadVersion.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/PayloadVersion.java @@ -31,8 +31,6 @@ import org.opendaylight.yangtools.yang.data.codec.binfmt.NormalizedNodeStreamVer * participant instance should oppose RAFT candidates which produce persistence of an unsupported version. If a follower * encounters an unsupported version it must not become fully-operational, as it does not have an accurate view * of shard state. - * - * @author Robert Varga */ @Beta public enum PayloadVersion implements WritableObject { @@ -50,23 +48,13 @@ public enum PayloadVersion implements WritableObject { }, /** - * ABI version as shipped in Sodium SR1 Simultaneous Release. QName-bearing messages are using - * {@link NormalizedNodeStreamVersion#SODIUM_SR1}, which improves encoding. - */ - @Deprecated(since = "7.0.0", forRemoval = true) - SODIUM_SR1(7) { - @Override - public NormalizedNodeStreamVersion getStreamVersion() { - return NormalizedNodeStreamVersion.SODIUM_SR1; - } - }, - - /** - * Revised payload version. Payloads remain the same as {@link #SODIUM_SR1}, but messages bearing QNames in any - * shape are using {@link NormalizedNodeStreamVersion#MAGNESIUM}, which improves encoding. + * ABI version shipped enabled {@code 2022.09 Chlorine SR2}. This version revises the serialization format of + * payloads proxies to reduce their size. Otherwise this format is equivalent to {@code #MAGNESIUM}. + * + * @deprecated Use {@link #POTASSIUM} instead. */ - @Deprecated(since = "7.0.0", forRemoval = true) - MAGNESIUM(8) { + @Deprecated(since = "8.0.0", forRemoval = true) + CHLORINE_SR2(9) { @Override public NormalizedNodeStreamVersion getStreamVersion() { return NormalizedNodeStreamVersion.MAGNESIUM; @@ -74,13 +62,13 @@ public enum PayloadVersion implements WritableObject { }, /** - * ABI version shipped enabled {@code 2022.09 Chlorine SR2}. This version revises the serialization format of - * payloads proxies to reduce their size. Otherwise this format is equivalent to {@link #MAGNESIUM}. + * ABI version shipped enabled {@code 2023.09 Potassium}. This version removes Augmentation identifier and nodes. + * Otherwise this format is equivalent to {@link #CHLORINE_SR2}. */ - CHLORINE_SR2(9) { + POTASSIUM(10) { @Override public NormalizedNodeStreamVersion getStreamVersion() { - return NormalizedNodeStreamVersion.MAGNESIUM; + return NormalizedNodeStreamVersion.POTASSIUM; } }, @@ -125,7 +113,7 @@ public enum PayloadVersion implements WritableObject { * @return Current {@link PayloadVersion} */ public static @NonNull PayloadVersion current() { - return CHLORINE_SR2; + return POTASSIUM; } /** @@ -140,10 +128,9 @@ public enum PayloadVersion implements WritableObject { public static @NonNull PayloadVersion valueOf(final short version) throws FutureVersionException, PastVersionException { return switch (Short.toUnsignedInt(version)) { - case 0, 1, 2, 3, 4, 5, 6 -> throw new PastVersionException(version, SODIUM_SR1); - case 7 -> SODIUM_SR1; - case 8 -> MAGNESIUM; + case 0, 1, 2, 3, 4, 5, 6, 7, 8 -> throw new PastVersionException(version, CHLORINE_SR2); case 9 -> CHLORINE_SR2; + case 10 -> POTASSIUM; default -> throw new FutureVersionException(version, CHLORINE_SR2); }; } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/utils/RootScatterGather.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/utils/RootScatterGather.java index 4848a498b4..c0d4de44d3 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/utils/RootScatterGather.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/utils/RootScatterGather.java @@ -103,7 +103,7 @@ public final class RootScatterGather { return FluentFuture.from(Futures.transform( Futures.allAsList(readFutures.collect(ImmutableList.toImmutableList())), input -> { try { - return NormalizedNodeAggregator.aggregate(YangInstanceIdentifier.empty(), input, + return NormalizedNodeAggregator.aggregate(YangInstanceIdentifier.of(), input, actorUtils.getSchemaContext(), actorUtils.getDatastoreContext().getLogicalStoreType()); } catch (DataValidationFailedException e) { throw new IllegalArgumentException("Failed to aggregate", e); @@ -116,10 +116,10 @@ public final class RootScatterGather { final var builders = allShards .collect(Collectors.toUnmodifiableMap(Function.identity(), unused -> Builders.containerBuilder())); for (var child : rootNode.body()) { - final var shard = childToShard.apply(child.getIdentifier()); + final var shard = childToShard.apply(child.name()); verifyNotNull(builders.get(shard), "Failed to find builder for %s", shard).addChild(child); } - return streamContainers(rootNode.getIdentifier(), builders); + return streamContainers(rootNode.name(), builders); } /** @@ -134,10 +134,10 @@ public final class RootScatterGather { final Function childToShard) { final var builders = new HashMap>(); for (var child : rootNode.body()) { - builders.computeIfAbsent(childToShard.apply(child.getIdentifier()), unused -> Builders.containerBuilder()) + builders.computeIfAbsent(childToShard.apply(child.name()), unused -> Builders.containerBuilder()) .addChild(child); } - return streamContainers(rootNode.getIdentifier(), builders); + return streamContainers(rootNode.name(), builders); } private static @NonNull Stream> streamContainers(final NodeIdentifier rootId, diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedReadTransactionTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedReadTransactionTest.java index c347f22ae3..3a5a82fc31 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedReadTransactionTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedReadTransactionTest.java @@ -43,19 +43,19 @@ public class ClientBackedReadTransactionTest extends ClientBackedTransactionTest public void setUp() { doReturn(TRANSACTION_ID).when(delegate).getIdentifier(); - doReturn(immediateTrueFluentFuture()).when(delegate).exists(YangInstanceIdentifier.empty()); - doReturn(immediateFluentFuture(Optional.of(data))).when(delegate).read(YangInstanceIdentifier.empty()); + doReturn(immediateTrueFluentFuture()).when(delegate).exists(YangInstanceIdentifier.of()); + doReturn(immediateFluentFuture(Optional.of(data))).when(delegate).read(YangInstanceIdentifier.of()); object = new ClientBackedReadTransaction(delegate, null, null); } @Test public void testRead() throws Exception { - assertEquals(Optional.of(data), object().read(YangInstanceIdentifier.empty()).get()); + assertEquals(Optional.of(data), object().read(YangInstanceIdentifier.of()).get()); } @Test public void testExists() throws Exception { - assertEquals(Boolean.TRUE, object().exists(YangInstanceIdentifier.empty()).get()); + assertEquals(Boolean.TRUE, object().exists(YangInstanceIdentifier.of()).get()); } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedReadWriteTransactionTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedReadWriteTransactionTest.java index a8f74e48cd..8378c92543 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedReadWriteTransactionTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedReadWriteTransactionTest.java @@ -41,19 +41,19 @@ public class ClientBackedReadWriteTransactionTest public void setUp() { doReturn(TRANSACTION_ID).when(delegate).getIdentifier(); - doReturn(immediateTrueFluentFuture()).when(delegate).exists(YangInstanceIdentifier.empty()); - doReturn(immediateFluentFuture(Optional.of(data))).when(delegate).read(YangInstanceIdentifier.empty()); + doReturn(immediateTrueFluentFuture()).when(delegate).exists(YangInstanceIdentifier.of()); + doReturn(immediateFluentFuture(Optional.of(data))).when(delegate).read(YangInstanceIdentifier.of()); object = new ClientBackedReadWriteTransaction(delegate, null); } @Test public void testRead() throws Exception { - assertEquals(Optional.of(data), object().read(YangInstanceIdentifier.empty()).get()); + assertEquals(Optional.of(data), object().read(YangInstanceIdentifier.of()).get()); } @Test public void testExists() throws Exception { - assertEquals(Boolean.TRUE, object().exists(YangInstanceIdentifier.empty()).get()); + assertEquals(Boolean.TRUE, object().exists(YangInstanceIdentifier.of()).get()); } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedWriteTransactionTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedWriteTransactionTest.java index 2dbbaa3245..94173268bc 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedWriteTransactionTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedWriteTransactionTest.java @@ -47,20 +47,20 @@ public class ClientBackedWriteTransactionTest extends ClientBackedTransactionTes @Test public void testWrite() { - object().write(YangInstanceIdentifier.empty(), data); - verify(delegate).write(YangInstanceIdentifier.empty(), data); + object().write(YangInstanceIdentifier.of(), data); + verify(delegate).write(YangInstanceIdentifier.of(), data); } @Test public void testMerge() { - object().merge(YangInstanceIdentifier.empty(), data); - verify(delegate).merge(YangInstanceIdentifier.empty(), data); + object().merge(YangInstanceIdentifier.of(), data); + verify(delegate).merge(YangInstanceIdentifier.of(), data); } @Test public void testDelete() { - object().delete(YangInstanceIdentifier.empty()); - verify(delegate).delete(YangInstanceIdentifier.empty()); + object().delete(YangInstanceIdentifier.of()); + verify(delegate).delete(YangInstanceIdentifier.of()); } @Test diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ConcurrentDOMDataBrokerTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ConcurrentDOMDataBrokerTest.java index bcaef6bef4..604192746b 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ConcurrentDOMDataBrokerTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ConcurrentDOMDataBrokerTest.java @@ -278,9 +278,9 @@ public class ConcurrentDOMDataBrokerTest { configDomStore), futureExecutor)) { DOMDataTreeReadWriteTransaction dataTxn = dataBroker.newReadWriteTransaction(); - dataTxn.put(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.empty(), mock(NormalizedNode.class)); - dataTxn.put(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.empty(), mock(NormalizedNode.class)); - dataTxn.read(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.empty()); + dataTxn.put(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.of(), mock(NormalizedNode.class)); + dataTxn.put(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.of(), mock(NormalizedNode.class)); + dataTxn.read(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.of()); verify(configDomStore, never()).newReadWriteTransaction(); verify(operationalDomStore, times(1)).newReadWriteTransaction(); @@ -302,8 +302,8 @@ public class ConcurrentDOMDataBrokerTest { configDomStore), futureExecutor)) { DOMDataTreeWriteTransaction dataTxn = dataBroker.newWriteOnlyTransaction(); - dataTxn.put(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.empty(), mock(NormalizedNode.class)); - dataTxn.put(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.empty(), mock(NormalizedNode.class)); + dataTxn.put(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.of(), mock(NormalizedNode.class)); + dataTxn.put(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.of(), mock(NormalizedNode.class)); verify(configDomStore, never()).newWriteOnlyTransaction(); verify(operationalDomStore, times(1)).newWriteOnlyTransaction(); @@ -324,8 +324,8 @@ public class ConcurrentDOMDataBrokerTest { configDomStore), futureExecutor)) { DOMDataTreeReadTransaction dataTxn = dataBroker.newReadOnlyTransaction(); - dataTxn.read(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.empty()); - dataTxn.read(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.empty()); + dataTxn.read(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.of()); + dataTxn.read(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.of()); verify(configDomStore, never()).newReadOnlyTransaction(); verify(operationalDomStore, times(1)).newReadOnlyTransaction(); @@ -359,7 +359,7 @@ public class ConcurrentDOMDataBrokerTest { }) { DOMDataTreeReadWriteTransaction domDataReadWriteTransaction = dataBroker.newReadWriteTransaction(); - domDataReadWriteTransaction.delete(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.empty()); + domDataReadWriteTransaction.delete(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.of()); domDataReadWriteTransaction.commit(); @@ -403,7 +403,7 @@ public class ConcurrentDOMDataBrokerTest { verify(mockChain, never()).newWriteOnlyTransaction(); - domDataWriteTransaction.put(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.empty(), + domDataWriteTransaction.put(LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.of(), mock(NormalizedNode.class)); } } @@ -447,7 +447,7 @@ public class ConcurrentDOMDataBrokerTest { DOMDataTreeCommitCohort cohort = mock(DOMDataTreeCommitCohort.class); DOMDataTreeIdentifier path = new DOMDataTreeIdentifier( org.opendaylight.mdsal.common.api.LogicalDatastoreType.CONFIGURATION, - YangInstanceIdentifier.empty()); + YangInstanceIdentifier.of()); cohortRegistry.registerCommitCohort(path, cohort); verify(mockConfigStore).registerCommitCohort(path, cohort); diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractClientHandleTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractClientHandleTest.java index 83a00ff19f..eb6775cf32 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractClientHandleTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractClientHandleTest.java @@ -57,7 +57,7 @@ import scala.concurrent.Promise; @RunWith(MockitoJUnitRunner.StrictStubs.class) public abstract class AbstractClientHandleTest> { private static final String PERSISTENCE_ID = "per-1"; - private static final YangInstanceIdentifier PATH = YangInstanceIdentifier.empty(); + private static final YangInstanceIdentifier PATH = YangInstanceIdentifier.of(); @Mock private DataTree dataTree; diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractClientHistoryTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractClientHistoryTest.java index 3d9b3fd336..7f934622ab 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractClientHistoryTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractClientHistoryTest.java @@ -115,7 +115,7 @@ public abstract class AbstractClientHistoryTest @Test public void testResolveShardForPath() { - final Long shardForPath = object().resolveShardForPath(YangInstanceIdentifier.empty()); + final Long shardForPath = object().resolveShardForPath(YangInstanceIdentifier.of()); assertNotNull(shardForPath); assertEquals(0L, (long) shardForPath); } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractDataStoreClientBehaviorTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractDataStoreClientBehaviorTest.java index ed7bdaca14..9254802810 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractDataStoreClientBehaviorTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractDataStoreClientBehaviorTest.java @@ -75,7 +75,7 @@ public abstract class AbstractDataStoreClientBehaviorTest { @Test public void testResolveShardForPath() { - assertEquals(0L, behavior.resolveShardForPath(YangInstanceIdentifier.empty()).longValue()); + assertEquals(0L, behavior.resolveShardForPath(YangInstanceIdentifier.of()).longValue()); } @Test @@ -140,7 +140,7 @@ public abstract class AbstractDataStoreClientBehaviorTest { //set up data tree mock final CursorAwareDataTreeModification modification = mock(CursorAwareDataTreeModification.class); - doReturn(Optional.empty()).when(modification).readNode(YangInstanceIdentifier.empty()); + doReturn(Optional.empty()).when(modification).readNode(YangInstanceIdentifier.of()); final DataTreeSnapshot snapshot = mock(DataTreeSnapshot.class); doReturn(modification).when(snapshot).newModification(); final DataTree dataTree = mock(DataTree.class); @@ -149,7 +149,7 @@ public abstract class AbstractDataStoreClientBehaviorTest { final TestProbe backendProbe = new TestProbe(system, "backend"); final long shard = 0L; - behavior.createTransaction().read(YangInstanceIdentifier.empty()); + behavior.createTransaction().read(YangInstanceIdentifier.of()); final AbstractClientConnection connection = behavior.getConnection(shard); //check cached connection for same shard assertSame(connection, behavior.getConnection(shard)); @@ -165,7 +165,7 @@ public abstract class AbstractDataStoreClientBehaviorTest { final InternalCommand command = clientActorProbe.expectMsgClass(InternalCommand.class); command.execute(behavior); //check, whether command was reaplayed - verify(modification).readNode(YangInstanceIdentifier.empty()); + verify(modification).readNode(YangInstanceIdentifier.of()); } private static ActorUtils createActorContextMock(final ActorSystem system, final ActorRef actor) { diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientSnapshotTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientSnapshotTest.java index c5cdeb7df8..cc50a9ba58 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientSnapshotTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientSnapshotTest.java @@ -19,7 +19,7 @@ import org.junit.Test; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; public class ClientSnapshotTest extends AbstractClientHandleTest { - private static final YangInstanceIdentifier PATH = YangInstanceIdentifier.empty(); + private static final YangInstanceIdentifier PATH = YangInstanceIdentifier.of(); @Before @Override diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/ModuleShardBackendResolverTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/ModuleShardBackendResolverTest.java index 20525d78ed..6ef398c78b 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/ModuleShardBackendResolverTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/ModuleShardBackendResolverTest.java @@ -85,7 +85,7 @@ public class ModuleShardBackendResolverTest { moduleShardBackendResolver = new ModuleShardBackendResolver(CLIENT_ID, actorUtils); doReturn(shardStrategyFactory).when(actorUtils).getShardStrategyFactory(); - doReturn(shardStrategy).when(shardStrategyFactory).getStrategy(YangInstanceIdentifier.empty()); + doReturn(shardStrategy).when(shardStrategyFactory).getStrategy(YangInstanceIdentifier.of()); final PrimaryShardInfoFutureCache cache = new PrimaryShardInfoFutureCache(); doReturn(cache).when(actorUtils).getPrimaryShardInfoCache(); } @@ -97,15 +97,15 @@ public class ModuleShardBackendResolverTest { @Test public void testResolveShardForPathNonNullCookie() { - doReturn(DefaultShardStrategy.DEFAULT_SHARD).when(shardStrategy).findShard(YangInstanceIdentifier.empty()); - final Long cookie = moduleShardBackendResolver.resolveShardForPath(YangInstanceIdentifier.empty()); + doReturn(DefaultShardStrategy.DEFAULT_SHARD).when(shardStrategy).findShard(YangInstanceIdentifier.of()); + final Long cookie = moduleShardBackendResolver.resolveShardForPath(YangInstanceIdentifier.of()); assertEquals(0L, (long) cookie); } @Test public void testResolveShardForPathNullCookie() { - doReturn("foo").when(shardStrategy).findShard(YangInstanceIdentifier.empty()); - final Long cookie = moduleShardBackendResolver.resolveShardForPath(YangInstanceIdentifier.empty()); + doReturn("foo").when(shardStrategy).findShard(YangInstanceIdentifier.of()); + final Long cookie = moduleShardBackendResolver.resolveShardForPath(YangInstanceIdentifier.of()); assertEquals(1L, (long) cookie); } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractDistributedDataStoreIntegrationTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractDistributedDataStoreIntegrationTest.java index 91a5a4fd63..b7e39984a8 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractDistributedDataStoreIntegrationTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractDistributedDataStoreIntegrationTest.java @@ -850,7 +850,7 @@ public abstract class AbstractDistributedDataStoreIntegrationTest { DataTree dataTree = new InMemoryDataTreeFactory().create( DataTreeConfiguration.DEFAULT_OPERATIONAL, SchemaContextHelper.full()); AbstractShardTest.writeToStore(dataTree, CarsModel.BASE_PATH, carsNode); - NormalizedNode root = AbstractShardTest.readStore(dataTree, YangInstanceIdentifier.empty()); + NormalizedNode root = AbstractShardTest.readStore(dataTree, YangInstanceIdentifier.of()); final Snapshot carsSnapshot = Snapshot.create( new ShardSnapshotState(new MetadataShardDataTreeSnapshot(root)), @@ -862,7 +862,7 @@ public abstract class AbstractDistributedDataStoreIntegrationTest { final NormalizedNode peopleNode = PeopleModel.create(); AbstractShardTest.writeToStore(dataTree, PeopleModel.BASE_PATH, peopleNode); - root = AbstractShardTest.readStore(dataTree, YangInstanceIdentifier.empty()); + root = AbstractShardTest.readStore(dataTree, YangInstanceIdentifier.of()); final Snapshot peopleSnapshot = Snapshot.create( new ShardSnapshotState(new MetadataShardDataTreeSnapshot(root)), @@ -901,7 +901,7 @@ public abstract class AbstractDistributedDataStoreIntegrationTest { .withChild(CarsModel.create()) .build(); - testKit.testWriteTransaction(dataStore, YangInstanceIdentifier.empty(), rootNode); + testKit.testWriteTransaction(dataStore, YangInstanceIdentifier.of(), rootNode); IntegrationTestKit.verifyShardState(dataStore, "cars", state -> assertEquals(1, state.getSnapshotIndex())); @@ -921,7 +921,7 @@ public abstract class AbstractDistributedDataStoreIntegrationTest { verifySnapshot("member-1-shard-cars-testRootOverwrite", 1, 1); // root overwrite so expect a snapshot - testKit.testWriteTransaction(dataStore, YangInstanceIdentifier.empty(), rootNode); + testKit.testWriteTransaction(dataStore, YangInstanceIdentifier.of(), rootNode); // this was a real snapshot so everything should be in it(1 + 10 + 1) IntegrationTestKit.verifyShardState(dataStore, "cars", diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractShardTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractShardTest.java index aac97575ff..260a6bbdc4 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractShardTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractShardTest.java @@ -347,7 +347,7 @@ public abstract class AbstractShardTest extends AbstractActorTest { writeToStore(testStore, TestModel.TEST_PATH, ImmutableNodes.containerNode(TestModel.TEST_QNAME)); - final NormalizedNode root = readStore(testStore, YangInstanceIdentifier.empty()); + final NormalizedNode root = readStore(testStore, YangInstanceIdentifier.of()); InMemorySnapshotStore.addSnapshot(shardID.toString(), Snapshot.create( new ShardSnapshotState(new MetadataShardDataTreeSnapshot(root)), @@ -405,9 +405,8 @@ public abstract class AbstractShardTest extends AbstractActorTest { public static DataTreeCandidateTip mockCandidate(final String name) { final DataTreeCandidateTip mockCandidate = mock(DataTreeCandidateTip.class, name); final DataTreeCandidateNode mockCandidateNode = mock(DataTreeCandidateNode.class, name + "-node"); - doReturn(ModificationType.WRITE).when(mockCandidateNode).getModificationType(); - doReturn(Optional.of(ImmutableNodes.containerNode(CarsModel.CARS_QNAME))) - .when(mockCandidateNode).getDataAfter(); + doReturn(ModificationType.WRITE).when(mockCandidateNode).modificationType(); + doReturn(ImmutableNodes.containerNode(CarsModel.CARS_QNAME)).when(mockCandidateNode).dataAfter(); doReturn(CarsModel.BASE_PATH).when(mockCandidate).getRootPath(); doReturn(mockCandidateNode).when(mockCandidate).getRootNode(); return mockCandidate; @@ -416,8 +415,8 @@ public abstract class AbstractShardTest extends AbstractActorTest { static DataTreeCandidateTip mockUnmodifiedCandidate(final String name) { final DataTreeCandidateTip mockCandidate = mock(DataTreeCandidateTip.class, name); final DataTreeCandidateNode mockCandidateNode = mock(DataTreeCandidateNode.class, name + "-node"); - doReturn(ModificationType.UNMODIFIED).when(mockCandidateNode).getModificationType(); - doReturn(YangInstanceIdentifier.empty()).when(mockCandidate).getRootPath(); + doReturn(ModificationType.UNMODIFIED).when(mockCandidateNode).modificationType(); + doReturn(YangInstanceIdentifier.of()).when(mockCandidate).getRootPath(); doReturn(mockCandidateNode).when(mockCandidate).getRootNode(); return mockCandidate; } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DataTreeCohortActorTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DataTreeCohortActorTest.java index ae8dd51466..7a3e268392 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DataTreeCohortActorTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DataTreeCohortActorTest.java @@ -137,7 +137,7 @@ public class DataTreeCohortActorTest extends AbstractActorTest { @Test public void testFailureOnCanCommit() throws Exception { - DataValidationFailedException failure = new DataValidationFailedException(YangInstanceIdentifier.empty(), + DataValidationFailedException failure = new DataValidationFailedException(YangInstanceIdentifier.of(), "mock"); doReturn(FluentFutures.immediateFailedFluentFuture(failure)).when(mockCohort).canCommit(any(Object.class), any(EffectiveModelContext.class), anyCollection()); @@ -195,7 +195,7 @@ public class DataTreeCohortActorTest extends AbstractActorTest { } private ActorRef newCohortActor(final String name) { - return actorFactory.createActor(DataTreeCohortActor.props(mockCohort, YangInstanceIdentifier.empty()), name); + return actorFactory.createActor(DataTreeCohortActor.props(mockCohort, YangInstanceIdentifier.of()), name); } private void resetMockCohort() { diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DataTreeCohortIntegrationTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DataTreeCohortIntegrationTest.java index ad74a4ba16..9a447677f6 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DataTreeCohortIntegrationTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DataTreeCohortIntegrationTest.java @@ -310,18 +310,20 @@ public class DataTreeCohortIntegrationTest { final Optional expDataAfter, final Optional expDataBefore) { assertNotNull("Expected candidate for path " + expTreeId.getRootIdentifier(), candidate); assertEquals("rootPath", expTreeId, candidate.getRootPath()); - assertEquals("modificationType", expType, candidate.getRootNode().getModificationType()); + assertEquals("modificationType", expType, candidate.getRootNode().modificationType()); - assertEquals("dataAfter present", expDataAfter.isPresent(), candidate.getRootNode().getDataAfter().isPresent()); + assertEquals("dataAfter present", expDataAfter.isPresent(), + candidate.getRootNode().findDataAfter().isPresent()); if (expDataAfter.isPresent()) { - assertEquals("dataAfter", expDataAfter.orElseThrow(), candidate.getRootNode().getDataAfter().orElseThrow()); + assertEquals("dataAfter", expDataAfter.orElseThrow(), + candidate.getRootNode().findDataAfter().orElseThrow()); } assertEquals("dataBefore present", expDataBefore.isPresent(), - candidate.getRootNode().getDataBefore().isPresent()); + candidate.getRootNode().findDataBefore().isPresent()); if (expDataBefore.isPresent()) { assertEquals("dataBefore", expDataBefore.orElseThrow(), - candidate.getRootNode().getDataBefore().orElseThrow()); + candidate.getRootNode().findDataBefore().orElseThrow()); } } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DatastoreSnapshotRestoreTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DatastoreSnapshotRestoreTest.java index 69e20fca77..9b13193b15 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DatastoreSnapshotRestoreTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DatastoreSnapshotRestoreTest.java @@ -130,7 +130,7 @@ public class DatastoreSnapshotRestoreTest { DataTree dataTree = new InMemoryDataTreeFactory().create(DataTreeConfiguration.DEFAULT_OPERATIONAL, SchemaContextHelper.full()); AbstractShardTest.writeToStore(dataTree, path, node); - NormalizedNode root = AbstractShardTest.readStore(dataTree, YangInstanceIdentifier.empty()); + NormalizedNode root = AbstractShardTest.readStore(dataTree, YangInstanceIdentifier.of()); return Snapshot.create(new ShardSnapshotState(new MetadataShardDataTreeSnapshot(root)), Collections.emptyList(), 2, 1, 2, 1, 1, "member-1", null); diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DistributedDataStoreRemotingIntegrationTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DistributedDataStoreRemotingIntegrationTest.java index 265f4f2c45..32718440c1 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DistributedDataStoreRemotingIntegrationTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DistributedDataStoreRemotingIntegrationTest.java @@ -1345,7 +1345,7 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest { CarsModel.newCarsMapNode(CarsModel.newCarEntry("optima", Uint64.valueOf(20000)))); AbstractShardTest.writeToStore(tree, CarsModel.BASE_PATH, carsNode); - final NormalizedNode snapshotRoot = AbstractShardTest.readStore(tree, YangInstanceIdentifier.empty()); + final NormalizedNode snapshotRoot = AbstractShardTest.readStore(tree, YangInstanceIdentifier.of()); final Snapshot initialSnapshot = Snapshot.create( new ShardSnapshotState(new MetadataShardDataTreeSnapshot(snapshotRoot)), Collections.emptyList(), 5, 1, 5, 1, 1, null, null); @@ -1460,7 +1460,7 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest { .withChild(CarsModel.create()) .build(); - leaderTestKit.testWriteTransaction(leaderDistributedDataStore, YangInstanceIdentifier.empty(), rootNode); + leaderTestKit.testWriteTransaction(leaderDistributedDataStore, YangInstanceIdentifier.of(), rootNode); // FIXME: CONTROLLER-2020: ClientBackedDatastore does not have stable indexes/term, // the snapshot index seems to fluctuate @@ -1490,7 +1490,7 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest { verifySnapshot("member-2-shard-cars-testSnapshotOnRootOverwrite", 1); // root overwrite so expect a snapshot - leaderTestKit.testWriteTransaction(leaderDistributedDataStore, YangInstanceIdentifier.empty(), rootNode); + leaderTestKit.testWriteTransaction(leaderDistributedDataStore, YangInstanceIdentifier.of(), rootNode); // this was a real snapshot so everything should be in it(1(DisableTrackingPayload) + 1 + 10 + 1) IntegrationTestKit.verifyShardState(leaderDistributedDataStore, "cars", diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/FrontendReadWriteTransactionTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/FrontendReadWriteTransactionTest.java index a195849f49..7786f13948 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/FrontendReadWriteTransactionTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/FrontendReadWriteTransactionTest.java @@ -133,7 +133,7 @@ public class FrontendReadWriteTransactionTest { assertNotNull(handleRequest(readyReq)); verify(mockParent).finishTransaction(same(shardTransaction), eq(Optional.empty())); - handleRequest(new ReadTransactionRequest(TX_ID, 0, mock(ActorRef.class), YangInstanceIdentifier.empty(), true)); + handleRequest(new ReadTransactionRequest(TX_ID, 0, mock(ActorRef.class), YangInstanceIdentifier.of(), true)); } @Test(expected = IllegalStateException.class) @@ -160,6 +160,6 @@ public class FrontendReadWriteTransactionTest { assertNull(handleRequest(abortReq)); verify(mockParent).abortTransaction(same(shardTransaction), any(Runnable.class)); - handleRequest(new ReadTransactionRequest(TX_ID, 0, mock(ActorRef.class), YangInstanceIdentifier.empty(), true)); + handleRequest(new ReadTransactionRequest(TX_ID, 0, mock(ActorRef.class), YangInstanceIdentifier.of(), true)); } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/LocalTransactionContextTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/LocalTransactionContextTest.java index 48e4017984..3c32121cec 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/LocalTransactionContextTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/LocalTransactionContextTest.java @@ -66,7 +66,7 @@ public class LocalTransactionContextTest { @Test public void testWrite() { - YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.empty(); + YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.of(); NormalizedNode normalizedNode = mock(NormalizedNode.class); localTransactionContext.executeWrite(yangInstanceIdentifier, normalizedNode, null); verify(readWriteTransaction).write(yangInstanceIdentifier, normalizedNode); @@ -74,7 +74,7 @@ public class LocalTransactionContextTest { @Test public void testMerge() { - YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.empty(); + YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.of(); NormalizedNode normalizedNode = mock(NormalizedNode.class); localTransactionContext.executeMerge(yangInstanceIdentifier, normalizedNode, null); verify(readWriteTransaction).merge(yangInstanceIdentifier, normalizedNode); @@ -82,14 +82,14 @@ public class LocalTransactionContextTest { @Test public void testDelete() { - YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.empty(); + YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.of(); localTransactionContext.executeDelete(yangInstanceIdentifier, null); verify(readWriteTransaction).delete(yangInstanceIdentifier); } @Test public void testRead() { - YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.empty(); + YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.of(); NormalizedNode normalizedNode = mock(NormalizedNode.class); doReturn(FluentFutures.immediateFluentFuture(Optional.of(normalizedNode))).when(readWriteTransaction) .read(yangInstanceIdentifier); @@ -100,7 +100,7 @@ public class LocalTransactionContextTest { @Test public void testExists() { - YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.empty(); + YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.of(); doReturn(FluentFutures.immediateTrueFluentFuture()).when(readWriteTransaction).exists(yangInstanceIdentifier); localTransactionContext.executeRead(new DataExists(yangInstanceIdentifier, DataStoreVersions.CURRENT_VERSION), SettableFuture.create(), null); @@ -121,7 +121,7 @@ public class LocalTransactionContextTest { @Test public void testReadyWithWriteError() { - YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.empty(); + YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.of(); NormalizedNode normalizedNode = mock(NormalizedNode.class); RuntimeException error = new RuntimeException("mock"); doThrow(error).when(readWriteTransaction).write(yangInstanceIdentifier, normalizedNode); @@ -136,7 +136,7 @@ public class LocalTransactionContextTest { @Test public void testReadyWithMergeError() { - YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.empty(); + YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.of(); NormalizedNode normalizedNode = mock(NormalizedNode.class); RuntimeException error = new RuntimeException("mock"); doThrow(error).when(readWriteTransaction).merge(yangInstanceIdentifier, normalizedNode); @@ -151,7 +151,7 @@ public class LocalTransactionContextTest { @Test public void testReadyWithDeleteError() { - YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.empty(); + YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.of(); RuntimeException error = new RuntimeException("mock"); doThrow(error).when(readWriteTransaction).delete(yangInstanceIdentifier); diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/RootDataTreeChangeListenerProxyTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/RootDataTreeChangeListenerProxyTest.java index 9e9d5ddd04..1b5cc255f6 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/RootDataTreeChangeListenerProxyTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/RootDataTreeChangeListenerProxyTest.java @@ -47,7 +47,7 @@ public class RootDataTreeChangeListenerProxyTest extends AbstractActorTest { ClusteredDOMDataTreeChangeListener mockClusteredListener = mock( ClusteredDOMDataTreeChangeListener.class); - final YangInstanceIdentifier path = YangInstanceIdentifier.empty(); + final YangInstanceIdentifier path = YangInstanceIdentifier.of(); final RootDataTreeChangeListenerProxy rootListenerProxy = new RootDataTreeChangeListenerProxy<>(actorUtils, mockClusteredListener, Set.of("shard-1", "shard-2")); @@ -79,7 +79,7 @@ public class RootDataTreeChangeListenerProxyTest extends AbstractActorTest { final TestKit kit2 = new TestKit(getSystem()); final ActorSelection rootListenerActor = getSystem().actorSelection(registerForShard1.getListenerActorPath()); rootListenerActor.tell(new EnableNotification(true, "test"), kit.getRef()); - final DataTreeCandidate peopleCandidate = DataTreeCandidates.fromNormalizedNode(YangInstanceIdentifier.empty(), + final DataTreeCandidate peopleCandidate = DataTreeCandidates.fromNormalizedNode(YangInstanceIdentifier.of(), PeopleModel.create()); rootListenerActor.tell(new DataTreeChanged(ImmutableList.of(peopleCandidate)), kit.getRef()); rootListenerActor.tell(new DataTreeChanged(ImmutableList.of(peopleCandidate)), kit2.getRef()); diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeTest.java index 2243c78f56..f7ffeecab8 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeTest.java @@ -36,7 +36,6 @@ import com.google.common.base.Ticker; import com.google.common.primitives.UnsignedLong; import com.google.common.util.concurrent.FutureCallback; import java.io.IOException; -import java.math.BigInteger; import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; @@ -195,14 +194,14 @@ public class ShardDataTreeTest extends AbstractTest { addCar(shardDataTree, "optima"); verifyOnDataTreeChanged(listener, dtc -> { - assertEquals("getModificationType", ModificationType.WRITE, dtc.getRootNode().getModificationType()); + assertEquals("getModificationType", ModificationType.WRITE, dtc.getRootNode().modificationType()); assertEquals("getRootPath", CarsModel.newCarPath("optima"), dtc.getRootPath()); }); addCar(shardDataTree, "sportage"); verifyOnDataTreeChanged(listener, dtc -> { - assertEquals("getModificationType", ModificationType.WRITE, dtc.getRootNode().getModificationType()); + assertEquals("getModificationType", ModificationType.WRITE, dtc.getRootNode().modificationType()); assertEquals("getRootPath", CarsModel.newCarPath("sportage"), dtc.getRootPath()); }); @@ -220,7 +219,7 @@ public class ShardDataTreeTest extends AbstractTest { verifyOnDataTreeChanged(listener, dtc -> { ModificationType expType = expChanges.remove(dtc.getRootPath()); assertNotNull("Got unexpected change for " + dtc.getRootPath(), expType); - assertEquals("getModificationType", expType, dtc.getRootNode().getModificationType()); + assertEquals("getModificationType", expType, dtc.getRootNode().modificationType()); }); if (!expChanges.isEmpty()) { @@ -485,8 +484,8 @@ public class ShardDataTreeTest extends AbstractTest { @Test public void testUintCommitPayload() throws IOException { shardDataTree.applyRecoveryPayload(CommitTransactionPayload.create(nextTransactionId(), - DataTreeCandidates.fromNormalizedNode(YangInstanceIdentifier.empty(), bigIntegerRoot()), - PayloadVersion.SODIUM_SR1)); + DataTreeCandidates.fromNormalizedNode(YangInstanceIdentifier.of(), bigIntegerRoot()), + PayloadVersion.POTASSIUM)); assertCarsUint64(); } @@ -512,7 +511,7 @@ public class ShardDataTreeTest extends AbstractTest { .withNodeIdentifier(new NodeIdentifier(CarsModel.BASE_QNAME)) .withChild(Builders.mapBuilder() .withNodeIdentifier(new NodeIdentifier(CarsModel.CAR_QNAME)) - .withChild(createCar("one", BigInteger.ONE)) + .withChild(createCar("one", Uint64.ONE)) .build()) .build()); mod.ready(); @@ -521,7 +520,7 @@ public class ShardDataTreeTest extends AbstractTest { dataTree.commit(first); mod = dataTree.takeSnapshot().newModification(); - mod.write(CarsModel.newCarPath("two"), createCar("two", BigInteger.TWO)); + mod.write(CarsModel.newCarPath("two"), createCar("two", Uint64.TWO)); mod.ready(); dataTree.validate(mod); final DataTreeCandidate second = dataTree.prepare(mod); @@ -530,7 +529,7 @@ public class ShardDataTreeTest extends AbstractTest { mod = dataTree.takeSnapshot().newModification(); mod.merge(CarsModel.CAR_LIST_PATH, Builders.mapBuilder() .withNodeIdentifier(new NodeIdentifier(CarsModel.CAR_QNAME)) - .withChild(createCar("three", BigInteger.TEN)) + .withChild(createCar("three", Uint64.TEN)) .build()); mod.ready(); dataTree.validate(mod); @@ -539,12 +538,12 @@ public class ShardDataTreeTest extends AbstractTest { // Apply first candidate as a snapshot shardDataTree.applyRecoverySnapshot(new ShardSnapshotState( - new MetadataShardDataTreeSnapshot(first.getRootNode().getDataAfter().orElseThrow()), true)); + new MetadataShardDataTreeSnapshot(first.getRootNode().findDataAfter().orElseThrow()), true)); // Apply the other two snapshots as transactions shardDataTree.applyRecoveryPayload(CommitTransactionPayload.create(nextTransactionId(), second, - PayloadVersion.SODIUM_SR1)); + PayloadVersion.POTASSIUM)); shardDataTree.applyRecoveryPayload(CommitTransactionPayload.create(nextTransactionId(), third, - PayloadVersion.SODIUM_SR1)); + PayloadVersion.POTASSIUM)); // Verify uint translation final DataTreeSnapshot snapshot = shardDataTree.newReadOnlyTransaction(nextTransactionId()).getSnapshot(); @@ -571,25 +570,24 @@ public class ShardDataTreeTest extends AbstractTest { private static ContainerNode bigIntegerRoot() { return Builders.containerBuilder() - .withNodeIdentifier(new NodeIdentifier(SchemaContext.NAME)) - .withChild(Builders.containerBuilder() - .withNodeIdentifier(new NodeIdentifier(CarsModel.CARS_QNAME)) - .withChild(Builders.mapBuilder() - .withNodeIdentifier(new NodeIdentifier(CarsModel.CAR_QNAME)) - // Note: BigInteger - .withChild(createCar("foo", BigInteger.ONE)) - .build()) + .withNodeIdentifier(new NodeIdentifier(SchemaContext.NAME)) + .withChild(Builders.containerBuilder() + .withNodeIdentifier(new NodeIdentifier(CarsModel.CARS_QNAME)) + .withChild(Builders.mapBuilder() + .withNodeIdentifier(new NodeIdentifier(CarsModel.CAR_QNAME)) + .withChild(createCar("foo", Uint64.ONE)) .build()) - .build(); + .build()) + .build(); } private static MapEntryNode createCar(final String name, final Object value) { return Builders.mapEntryBuilder() - .withNodeIdentifier(NodeIdentifierWithPredicates.of(CarsModel.CAR_QNAME,CarsModel.CAR_NAME_QNAME, name)) - .withChild(ImmutableNodes.leafNode(CarsModel.CAR_NAME_QNAME, name)) - // Note: old BigInteger - .withChild(ImmutableNodes.leafNode(CarsModel.CAR_PRICE_QNAME, value)) - .build(); + .withNodeIdentifier(NodeIdentifierWithPredicates.of(CarsModel.CAR_QNAME, CarsModel.CAR_NAME_QNAME, name)) + .withChild(ImmutableNodes.leafNode(CarsModel.CAR_NAME_QNAME, name)) + // Note: old BigInteger + .withChild(ImmutableNodes.leafNode(CarsModel.CAR_PRICE_QNAME, value)) + .build(); } private ShardDataTreeCohort newShardDataTreeCohort(final DataTreeOperation operation) { diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardRecoveryCoordinatorTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardRecoveryCoordinatorTest.java index 50dec58156..996aa86636 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardRecoveryCoordinatorTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardRecoveryCoordinatorTest.java @@ -131,6 +131,6 @@ public class ShardRecoveryCoordinatorTest extends AbstractTest { dataTree.commit(dataTree.prepare(modification)); return new ShardSnapshotState(new MetadataShardDataTreeSnapshot(dataTree.takeSnapshot().readNode( - YangInstanceIdentifier.empty()).orElseThrow())); + YangInstanceIdentifier.of()).orElseThrow())); } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTest.java index d2a08495cd..b034c4c625 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTest.java @@ -303,7 +303,7 @@ public class ShardTest extends AbstractShardTest { writeToStore(store, TestModel.TEST_PATH, container); - final YangInstanceIdentifier root = YangInstanceIdentifier.empty(); + final YangInstanceIdentifier root = YangInstanceIdentifier.of(); final NormalizedNode expected = readStore(store, root); final Snapshot snapshot = Snapshot.create(new ShardSnapshotState(new MetadataShardDataTreeSnapshot(expected)), @@ -1189,7 +1189,7 @@ public class ShardTest extends AbstractShardTest { final Duration duration = Duration.ofSeconds(5); final TransactionIdentifier transactionID1 = nextTransactionId(); - doThrow(new DataValidationFailedException(YangInstanceIdentifier.empty(), "mock canCommit failure")) + doThrow(new DataValidationFailedException(YangInstanceIdentifier.of(), "mock canCommit failure")) .doNothing().when(dataTree).validate(any(DataTreeModification.class)); shard.tell(newBatchedModifications(transactionID1, TestModel.TEST_PATH, @@ -1230,7 +1230,7 @@ public class ShardTest extends AbstractShardTest { ShardTestKit.waitUntilLeader(shard); - doThrow(new DataValidationFailedException(YangInstanceIdentifier.empty(), "mock canCommit failure")) + doThrow(new DataValidationFailedException(YangInstanceIdentifier.of(), "mock canCommit failure")) .doNothing().when(dataTree).validate(any(DataTreeModification.class)); final Duration duration = Duration.ofSeconds(5); @@ -1742,7 +1742,7 @@ public class ShardTest extends AbstractShardTest { ShardTestKit.waitUntilLeader(shard); writeToStore(shard, TestModel.TEST_PATH, ImmutableNodes.containerNode(TestModel.TEST_QNAME)); - final NormalizedNode expectedRoot = readStore(shard, YangInstanceIdentifier.empty()); + final NormalizedNode expectedRoot = readStore(shard, YangInstanceIdentifier.of()); // Trigger creation of a snapshot by ensuring final RaftActorContext raftActorContext = ((TestShard) shard.underlyingActor()).getRaftActorContext(); @@ -1785,16 +1785,16 @@ public class ShardTest extends AbstractShardTest { commitTransaction(store, putTransaction); - final NormalizedNode expected = readStore(store, YangInstanceIdentifier.empty()); + final NormalizedNode expected = readStore(store, YangInstanceIdentifier.of()); final DataTreeModification writeTransaction = store.takeSnapshot().newModification(); - writeTransaction.delete(YangInstanceIdentifier.empty()); - writeTransaction.write(YangInstanceIdentifier.empty(), expected); + writeTransaction.delete(YangInstanceIdentifier.of()); + writeTransaction.write(YangInstanceIdentifier.of(), expected); commitTransaction(store, writeTransaction); - final NormalizedNode actual = readStore(store, YangInstanceIdentifier.empty()); + final NormalizedNode actual = readStore(store, YangInstanceIdentifier.of()); assertEquals(expected, actual); } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionFailureTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionFailureTest.java index 14c3dcee24..0c77fccdf0 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionFailureTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionFailureTest.java @@ -73,12 +73,12 @@ public class ShardTransactionFailureTest extends AbstractActorTest { "testNegativeReadWithReadOnlyTransactionClosed"); Future future = akka.pattern.Patterns.ask(subject, - new ReadData(YangInstanceIdentifier.empty(), DataStoreVersions.CURRENT_VERSION), 3000); + new ReadData(YangInstanceIdentifier.of(), DataStoreVersions.CURRENT_VERSION), 3000); Await.result(future, FiniteDuration.create(3, TimeUnit.SECONDS)); subject.underlyingActor().getDOMStoreTransaction().abortFromTransactionActor(); - future = akka.pattern.Patterns.ask(subject, new ReadData(YangInstanceIdentifier.empty(), + future = akka.pattern.Patterns.ask(subject, new ReadData(YangInstanceIdentifier.of(), DataStoreVersions.CURRENT_VERSION), 3000); Await.result(future, FiniteDuration.create(3, TimeUnit.SECONDS)); } @@ -95,12 +95,12 @@ public class ShardTransactionFailureTest extends AbstractActorTest { "testNegativeReadWithReadWriteTransactionClosed"); Future future = akka.pattern.Patterns.ask(subject, - new ReadData(YangInstanceIdentifier.empty(), DataStoreVersions.CURRENT_VERSION), 3000); + new ReadData(YangInstanceIdentifier.of(), DataStoreVersions.CURRENT_VERSION), 3000); Await.result(future, FiniteDuration.create(3, TimeUnit.SECONDS)); subject.underlyingActor().getDOMStoreTransaction().abortFromTransactionActor(); - future = akka.pattern.Patterns.ask(subject, new ReadData(YangInstanceIdentifier.empty(), + future = akka.pattern.Patterns.ask(subject, new ReadData(YangInstanceIdentifier.of(), DataStoreVersions.CURRENT_VERSION), 3000); Await.result(future, FiniteDuration.create(3, TimeUnit.SECONDS)); } @@ -116,13 +116,13 @@ public class ShardTransactionFailureTest extends AbstractActorTest { "testNegativeExistsWithReadWriteTransactionClosed"); Future future = akka.pattern.Patterns.ask(subject, - new DataExists(YangInstanceIdentifier.empty(), DataStoreVersions.CURRENT_VERSION), 3000); + new DataExists(YangInstanceIdentifier.of(), DataStoreVersions.CURRENT_VERSION), 3000); Await.result(future, FiniteDuration.create(3, TimeUnit.SECONDS)); subject.underlyingActor().getDOMStoreTransaction().abortFromTransactionActor(); future = akka.pattern.Patterns.ask(subject, - new DataExists(YangInstanceIdentifier.empty(), DataStoreVersions.CURRENT_VERSION), 3000); + new DataExists(YangInstanceIdentifier.of(), DataStoreVersions.CURRENT_VERSION), 3000); Await.result(future, FiniteDuration.create(3, TimeUnit.SECONDS)); } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionTest.java index 7769f80e4f..06789dedb9 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionTest.java @@ -105,7 +105,7 @@ public class ShardTransactionTest extends AbstractActorTest { } private void testOnReceiveReadData(final ActorRef transaction) { - transaction.tell(new ReadData(YangInstanceIdentifier.empty(), DataStoreVersions.CURRENT_VERSION), + transaction.tell(new ReadData(YangInstanceIdentifier.of(), DataStoreVersions.CURRENT_VERSION), testKit.getRef()); ReadDataReply reply = testKit.expectMsgClass(Duration.ofSeconds(5), ReadDataReply.class); @@ -136,7 +136,7 @@ public class ShardTransactionTest extends AbstractActorTest { } private void testOnReceiveDataExistsPositive(final ActorRef transaction) { - transaction.tell(new DataExists(YangInstanceIdentifier.empty(), DataStoreVersions.CURRENT_VERSION), + transaction.tell(new DataExists(YangInstanceIdentifier.of(), DataStoreVersions.CURRENT_VERSION), testKit.getRef()); DataExistsReply reply = testKit.expectMsgClass(Duration.ofSeconds(5), DataExistsReply.class); diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/SimpleShardDataTreeCohortTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/SimpleShardDataTreeCohortTest.java index 99b02f1cdd..b8390f9fcd 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/SimpleShardDataTreeCohortTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/SimpleShardDataTreeCohortTest.java @@ -99,12 +99,12 @@ public class SimpleShardDataTreeCohortTest extends AbstractTest { @Test public void testCanCommitWithConflictingModEx() { - testValidatationPropagates(new ConflictingModificationAppliedException(YangInstanceIdentifier.empty(), "mock")); + testValidatationPropagates(new ConflictingModificationAppliedException(YangInstanceIdentifier.of(), "mock")); } @Test public void testCanCommitWithDataValidationEx() { - testValidatationPropagates(new DataValidationFailedException(YangInstanceIdentifier.empty(), "mock")); + testValidatationPropagates(new DataValidationFailedException(YangInstanceIdentifier.of(), "mock")); } @Test diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TransactionProxyTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TransactionProxyTest.java index c83327de5a..a7de0d269b 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TransactionProxyTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TransactionProxyTest.java @@ -1464,7 +1464,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest { TransactionProxy transactionProxy = new TransactionProxy(mockComponentFactory, READ_ONLY); Optional readOptional = transactionProxy.read( - YangInstanceIdentifier.empty()).get(5, TimeUnit.SECONDS); + YangInstanceIdentifier.of()).get(5, TimeUnit.SECONDS); assertTrue("NormalizedNode isPresent", readOptional.isPresent()); @@ -1511,6 +1511,6 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest { eqCreateTransaction(memberName, TransactionType.READ_ONLY), any(Timeout.class)); doReturn(readDataReply(expectedNode)).when(mockActorContext).executeOperationAsync( - eq(actorSelection(txActorRef)), eqReadData(YangInstanceIdentifier.empty()), any(Timeout.class)); + eq(actorSelection(txActorRef)), eqReadData(YangInstanceIdentifier.of()), any(Timeout.class)); } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/modification/MutableCompositeModificationTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/modification/MutableCompositeModificationTest.java index e633b17443..7cf6b98157 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/modification/MutableCompositeModificationTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/modification/MutableCompositeModificationTest.java @@ -31,7 +31,7 @@ public class MutableCompositeModificationTest extends AbstractModificationTest { compositeModification.apply(transaction); commitTransaction(transaction); - assertEquals(TestModel.TEST_QNAME, readData(TestModel.TEST_PATH).orElseThrow().getIdentifier().getNodeType()); + assertEquals(TestModel.TEST_QNAME, readData(TestModel.TEST_PATH).orElseThrow().name().getNodeType()); } @Test @@ -50,7 +50,7 @@ public class MutableCompositeModificationTest extends AbstractModificationTest { YangInstanceIdentifier deletePath = TestModel.TEST_PATH; MutableCompositeModification compositeModification = - new MutableCompositeModification(DataStoreVersions.SODIUM_SR1_VERSION); + new MutableCompositeModification(DataStoreVersions.POTASSIUM_VERSION); compositeModification.addModification(new WriteModification(writePath, writeData)); compositeModification.addModification(new MergeModification(mergePath, mergeData)); compositeModification.addModification(new DeleteModification(deletePath)); @@ -59,22 +59,22 @@ public class MutableCompositeModificationTest extends AbstractModificationTest { assertEquals(360, bytes.length); MutableCompositeModification clone = (MutableCompositeModification) SerializationUtils.deserialize(bytes); - assertEquals("getVersion", DataStoreVersions.SODIUM_SR1_VERSION, clone.getVersion()); + assertEquals("getVersion", DataStoreVersions.POTASSIUM_VERSION, clone.getVersion()); assertEquals("getModifications size", 3, clone.getModifications().size()); WriteModification write = (WriteModification)clone.getModifications().get(0); - assertEquals("getVersion", DataStoreVersions.SODIUM_SR1_VERSION, write.getVersion()); + assertEquals("getVersion", DataStoreVersions.POTASSIUM_VERSION, write.getVersion()); assertEquals("getPath", writePath, write.getPath()); assertEquals("getData", writeData, write.getData()); MergeModification merge = (MergeModification)clone.getModifications().get(1); - assertEquals("getVersion", DataStoreVersions.SODIUM_SR1_VERSION, merge.getVersion()); + assertEquals("getVersion", DataStoreVersions.POTASSIUM_VERSION, merge.getVersion()); assertEquals("getPath", mergePath, merge.getPath()); assertEquals("getData", mergeData, merge.getData()); DeleteModification delete = (DeleteModification)clone.getModifications().get(2); - assertEquals("getVersion", DataStoreVersions.SODIUM_SR1_VERSION, delete.getVersion()); + assertEquals("getVersion", DataStoreVersions.POTASSIUM_VERSION, delete.getVersion()); assertEquals("getPath", deletePath, delete.getPath()); } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/persisted/CommitTransactionPayloadTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/persisted/CommitTransactionPayloadTest.java index 6b2367458f..f2d551818d 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/persisted/CommitTransactionPayloadTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/persisted/CommitTransactionPayloadTest.java @@ -44,7 +44,7 @@ public class CommitTransactionPayloadTest extends AbstractTest { private static DataTreeCandidateNode findNode(final Collection nodes, final PathArgument arg) { for (DataTreeCandidateNode node : nodes) { - if (arg.equals(node.getIdentifier())) { + if (arg.equals(node.name())) { return node; } } @@ -55,13 +55,13 @@ public class CommitTransactionPayloadTest extends AbstractTest { final Collection actual) { // Make sure all expected nodes are there for (DataTreeCandidateNode exp : expected) { - final DataTreeCandidateNode act = findNode(actual, exp.getIdentifier()); + final DataTreeCandidateNode act = findNode(actual, exp.name()); assertNotNull("missing expected child", act); assertCandidateNodeEquals(exp, act); } // Make sure no nodes are present which are not in the expected set for (DataTreeCandidateNode act : actual) { - final DataTreeCandidateNode exp = findNode(expected, act.getIdentifier()); + final DataTreeCandidateNode exp = findNode(expected, act.name()); assertNull("unexpected child", exp); } } @@ -75,22 +75,22 @@ public class CommitTransactionPayloadTest extends AbstractTest { private static void assertCandidateNodeEquals(final DataTreeCandidateNode expected, final DataTreeCandidateNode actual) { - assertEquals("child type", expected.getModificationType(), actual.getModificationType()); + assertEquals("child type", expected.modificationType(), actual.modificationType()); - switch (actual.getModificationType()) { + switch (actual.modificationType()) { case DELETE: case WRITE: - assertEquals("child identifier", expected.getIdentifier(), actual.getIdentifier()); - assertEquals("child data", expected.getDataAfter(), actual.getDataAfter()); + assertEquals("child identifier", expected.name(), actual.name()); + assertEquals("child data", expected.dataAfter(), actual.dataAfter()); break; case SUBTREE_MODIFIED: - assertEquals("child identifier", expected.getIdentifier(), actual.getIdentifier()); - assertChildrenEquals(expected.getChildNodes(), actual.getChildNodes()); + assertEquals("child identifier", expected.name(), actual.name()); + assertChildrenEquals(expected.childNodes(), actual.childNodes()); break; case UNMODIFIED: break; default: - fail("Unexpect root type " + actual.getModificationType()); + fail("Unexpect root type " + actual.modificationType()); break; } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/MockDataTreeChangeListener.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/MockDataTreeChangeListener.java index 85a9666d6f..9ba38c2616 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/MockDataTreeChangeListener.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/MockDataTreeChangeListener.java @@ -88,17 +88,16 @@ public class MockDataTreeChangeListener implements DOMDataTreeChangeListener { for (int i = 0; i < expPaths.length; i++) { final DataTreeCandidate candidate = changeList.get(i); - final Optional maybeDataAfter = candidate.getRootNode().getDataAfter(); - if (!maybeDataAfter.isPresent()) { + final NormalizedNode dataAfter = candidate.getRootNode().dataAfter(); + if (dataAfter == null) { fail(String.format("Change %d does not contain data after. Actual: %s", i + 1, - candidate.getRootNode())); + candidate.getRootNode())); } - final NormalizedNode dataAfter = maybeDataAfter.orElseThrow(); final Optional relativePath = expPaths[i].relativeTo(candidate.getRootPath()); if (!relativePath.isPresent()) { assertEquals(String.format("Change %d does not contain %s. Actual: %s", i + 1, expPaths[i], - dataAfter), expPaths[i].getLastPathArgument(), dataAfter.getIdentifier()); + dataAfter), expPaths[i].getLastPathArgument(), dataAfter.name()); } else { NormalizedNode nextChild = dataAfter; for (PathArgument pathArg: relativePath.orElseThrow().getPathArguments()) { diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/NormalizedNodeAggregatorTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/NormalizedNodeAggregatorTest.java index 0f1325030d..360a4c6d02 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/NormalizedNodeAggregatorTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/NormalizedNodeAggregatorTest.java @@ -40,7 +40,7 @@ public class NormalizedNodeAggregatorTest { NormalizedNode expectedNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME); NormalizedNode expectedNode2 = ImmutableNodes.containerNode(CarsModel.CARS_QNAME); - Optional optional = NormalizedNodeAggregator.aggregate(YangInstanceIdentifier.empty(), + Optional optional = NormalizedNodeAggregator.aggregate(YangInstanceIdentifier.of(), ImmutableList.of( Optional.of(getRootNode(expectedNode1, schemaContext)), Optional.of(getRootNode(expectedNode2, schemaContext))), @@ -77,7 +77,7 @@ public class NormalizedNodeAggregatorTest { DOMStoreWriteTransaction writeTransaction = store.newWriteOnlyTransaction(); - writeTransaction.merge(YangInstanceIdentifier.of(moduleNode.getIdentifier().getNodeType()), moduleNode); + writeTransaction.merge(YangInstanceIdentifier.of(moduleNode.name().getNodeType()), moduleNode); DOMStoreThreePhaseCommitCohort ready = writeTransaction.ready(); @@ -87,14 +87,14 @@ public class NormalizedNodeAggregatorTest { DOMStoreReadTransaction readTransaction = store.newReadOnlyTransaction(); - return readTransaction.read(YangInstanceIdentifier.empty()).get().orElseThrow(); + return readTransaction.read(YangInstanceIdentifier.of()).get().orElseThrow(); } } public static NormalizedNode findChildWithQName(final Collection collection, final QName qname) { for (NormalizedNode node : collection) { - if (node.getIdentifier().getNodeType().equals(qname)) { + if (node.name().getNodeType().equals(qname)) { return node; } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/PruningDataTreeModificationTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/PruningDataTreeModificationTest.java index 8ea6aa2198..4c5c06e3fa 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/PruningDataTreeModificationTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/PruningDataTreeModificationTest.java @@ -141,7 +141,7 @@ public class PruningDataTreeModificationTest { verify(mockModification, times(1)).merge(path, normalizedNode); DataTreeCandidate candidate = getCandidate(); - assertEquals("getModificationType", ModificationType.UNMODIFIED, candidate.getRootNode().getModificationType()); + assertEquals("getModificationType", ModificationType.UNMODIFIED, candidate.getRootNode().modificationType()); } @Test @@ -181,7 +181,7 @@ public class PruningDataTreeModificationTest { verify(mockModification, times(1)).merge(path, normalizedNode); DataTreeCandidate candidate = getCandidate(); - assertEquals("getModificationType", ModificationType.UNMODIFIED, candidate.getRootNode().getModificationType()); + assertEquals("getModificationType", ModificationType.UNMODIFIED, candidate.getRootNode().modificationType()); } @Test @@ -204,11 +204,11 @@ public class PruningDataTreeModificationTest { localDataTree.validate(mod); localDataTree.commit(localDataTree.prepare(mod)); - NormalizedNode normalizedNode = dataTree.takeSnapshot().readNode(YangInstanceIdentifier.empty()).orElseThrow(); - pruningDataTreeModification.write(YangInstanceIdentifier.empty(), normalizedNode); + NormalizedNode normalizedNode = dataTree.takeSnapshot().readNode(YangInstanceIdentifier.of()).orElseThrow(); + pruningDataTreeModification.write(YangInstanceIdentifier.of(), normalizedNode); dataTree.commit(getCandidate()); - assertEquals(Optional.of(normalizedNode), dataTree.takeSnapshot().readNode(YangInstanceIdentifier.empty())); + assertEquals(Optional.of(normalizedNode), dataTree.takeSnapshot().readNode(YangInstanceIdentifier.of())); } @Test @@ -216,16 +216,16 @@ public class PruningDataTreeModificationTest { final Shard mockShard = Mockito.mock(Shard.class); ShardDataTree shardDataTree = new ShardDataTree(mockShard, SCHEMA_CONTEXT, TreeType.CONFIGURATION); - NormalizedNode root = shardDataTree.readNode(YangInstanceIdentifier.empty()).orElseThrow(); + NormalizedNode root = shardDataTree.readNode(YangInstanceIdentifier.of()).orElseThrow(); NormalizedNode normalizedNode = Builders.containerBuilder() - .withNodeIdentifier(new NodeIdentifier(root.getIdentifier().getNodeType())) + .withNodeIdentifier(new NodeIdentifier(root.name().getNodeType())) .withChild(ImmutableNodes.containerNode(AUG_CONTAINER)) .build(); - pruningDataTreeModification.write(YangInstanceIdentifier.empty(), normalizedNode); + pruningDataTreeModification.write(YangInstanceIdentifier.of(), normalizedNode); dataTree.commit(getCandidate()); - assertEquals(Optional.of(root), dataTree.takeSnapshot().readNode(YangInstanceIdentifier.empty())); + assertEquals(Optional.of(root), dataTree.takeSnapshot().readNode(YangInstanceIdentifier.of())); } @@ -239,7 +239,7 @@ public class PruningDataTreeModificationTest { verify(mockModification, times(1)).write(path, normalizedNode); DataTreeCandidate candidate = getCandidate(); - assertEquals("getModificationType", ModificationType.UNMODIFIED, candidate.getRootNode().getModificationType()); + assertEquals("getModificationType", ModificationType.UNMODIFIED, candidate.getRootNode().modificationType()); } @Test diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/md/cluster/datastore/model/CompositeModel.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/md/cluster/datastore/model/CompositeModel.java index 8515ef78b5..5750339cf5 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/md/cluster/datastore/model/CompositeModel.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/md/cluster/datastore/model/CompositeModel.java @@ -12,10 +12,8 @@ import static org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes.ma import static org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes.mapEntryBuilder; import static org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes.mapNodeBuilder; -import java.util.Set; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; -import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeWithValue; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; @@ -107,10 +105,7 @@ public final class CompositeModel { return Builders.containerBuilder() .withNodeIdentifier(new NodeIdentifier(TEST_QNAME)) .withChild(leafNode(DESC_QNAME, DESC)) - .withChild(Builders.augmentationBuilder() - .withNodeIdentifier(new AugmentationIdentifier(Set.of(AUG_QNAME))) - .withChild(leafNode(AUG_QNAME, "First Test")) - .build()) + .withChild(leafNode(AUG_QNAME, "First Test")) .withChild(Builders.leafSetBuilder() .withNodeIdentifier(new NodeIdentifier(QName.create(TEST_QNAME, "shoe"))) .withChild(Builders.leafSetEntryBuilder() diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/resources/expectedJournalExport.json b/opendaylight/md-sal/sal-distributed-datastore/src/test/resources/expectedJournalExport.json index a7b22c6e33..d534372d24 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/resources/expectedJournalExport.json +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/resources/expectedJournalExport.json @@ -1 +1 @@ -{"Entries":[{"Entry":[{"Node":[{"Path":"/"},{"ModificationType":"UNMODIFIED"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=1}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=2}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=3}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=4}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=5}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=6}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=7}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=8}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=9}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=10}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=11}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=12}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=13}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=14}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=15}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{identifier=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=16}]"}]}]}]} \ No newline at end of file +{"Entries":[{"Entry":[{"Node":[{"Path":"/"},{"ModificationType":"UNMODIFIED"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=1}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=2}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=3}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=4}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=5}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=6}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=7}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=8}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=9}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=10}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=11}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=12}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=13}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=14}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=15}]"}]}]},{"Entry":[{"Node":[{"Path":"/(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)test/outer-list"},{"ModificationType":"WRITE"},{"Data":"[ImmutableLeafNode{name=(urn:opendaylight:params:xml:ns:yang:controller:md:sal:dom:store:test?revision=2014-03-13)id, body=16}]"}]}]}]} \ No newline at end of file diff --git a/opendaylight/md-sal/sal-remoterpc-connector/pom.xml b/opendaylight/md-sal/sal-remoterpc-connector/pom.xml index 62ead955c4..cb07a4bbfe 100644 --- a/opendaylight/md-sal/sal-remoterpc-connector/pom.xml +++ b/opendaylight/md-sal/sal-remoterpc-connector/pom.xml @@ -12,6 +12,11 @@ bundle + + com.github.spotbugs + spotbugs-annotations + true + org.opendaylight.controller repackaged-akka diff --git a/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/registry/mbeans/RemoteActionRegistryMXBeanImplTest.java b/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/registry/mbeans/RemoteActionRegistryMXBeanImplTest.java index 18b443d8fd..e53fce4637 100644 --- a/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/registry/mbeans/RemoteActionRegistryMXBeanImplTest.java +++ b/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/registry/mbeans/RemoteActionRegistryMXBeanImplTest.java @@ -51,7 +51,7 @@ public class RemoteActionRegistryMXBeanImplTest { system = ActorSystem.create("test", ConfigFactory.load().getConfig("unit-test")); final DOMActionInstance emptyActionIdentifier = DOMActionInstance.of( - REMOTE_SCHEMA_PATH, LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.empty()); + REMOTE_SCHEMA_PATH, LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.of()); final DOMActionInstance localActionIdentifier = DOMActionInstance.of( LOCAL_SCHEMA_PATH, LogicalDatastoreType.OPERATIONAL, YangInstanceIdentifier.of(LOCAL_QNAME)); diff --git a/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/registry/mbeans/RemoteRpcRegistryMXBeanImplTest.java b/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/registry/mbeans/RemoteRpcRegistryMXBeanImplTest.java index 282b7b5ee4..26f4a1fa32 100644 --- a/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/registry/mbeans/RemoteRpcRegistryMXBeanImplTest.java +++ b/opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/registry/mbeans/RemoteRpcRegistryMXBeanImplTest.java @@ -51,7 +51,7 @@ public class RemoteRpcRegistryMXBeanImplTest { system = ActorSystem.create("test", ConfigFactory.load().getConfig("unit-test")); final DOMRpcIdentifier emptyRpcIdentifier = DOMRpcIdentifier.create( - REMOTE_QNAME, YangInstanceIdentifier.empty()); + REMOTE_QNAME, YangInstanceIdentifier.of()); final DOMRpcIdentifier localRpcIdentifier = DOMRpcIdentifier.create( LOCAL_QNAME, YangInstanceIdentifier.of(LOCAL_QNAME)); diff --git a/opendaylight/md-sal/samples/clustering-test-app/configuration/pom.xml b/opendaylight/md-sal/samples/clustering-test-app/configuration/pom.xml index 5de34433d5..c60d3f79b0 100644 --- a/opendaylight/md-sal/samples/clustering-test-app/configuration/pom.xml +++ b/opendaylight/md-sal/samples/clustering-test-app/configuration/pom.xml @@ -11,7 +11,7 @@ org.opendaylight.odlparent odlparent-lite - 12.0.6 + 13.0.1 diff --git a/opendaylight/md-sal/samples/clustering-test-app/pom.xml b/opendaylight/md-sal/samples/clustering-test-app/pom.xml index 0aaa658961..54220a037e 100644 --- a/opendaylight/md-sal/samples/clustering-test-app/pom.xml +++ b/opendaylight/md-sal/samples/clustering-test-app/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.odlparent odlparent-lite - 12.0.6 + 13.0.1 diff --git a/opendaylight/md-sal/samples/clustering-test-app/provider/pom.xml b/opendaylight/md-sal/samples/clustering-test-app/provider/pom.xml index 9a84da13a8..3711b261ff 100644 --- a/opendaylight/md-sal/samples/clustering-test-app/provider/pom.xml +++ b/opendaylight/md-sal/samples/clustering-test-app/provider/pom.xml @@ -13,6 +13,11 @@ bundle + + com.github.spotbugs + spotbugs-annotations + true + org.opendaylight.mdsal mdsal-eos-binding-api diff --git a/opendaylight/md-sal/samples/pom.xml b/opendaylight/md-sal/samples/pom.xml index e93f492a56..b9d5c7c394 100644 --- a/opendaylight/md-sal/samples/pom.xml +++ b/opendaylight/md-sal/samples/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.odlparent odlparent-lite - 12.0.6 + 13.0.1 diff --git a/pom.xml b/pom.xml index 0335b3f601..fad28d2038 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ org.opendaylight.odlparent odlparent-lite - 12.0.6 + 13.0.1 -- 2.36.6