Bump odlparent/yangtools/mdsal 62/95162/17
authorRobert Varga <robert.varga@pantheon.tech>
Sun, 14 Feb 2021 09:01:05 +0000 (10:01 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Sun, 9 May 2021 19:57:35 +0000 (21:57 +0200)
Adopt latest versions, namely;
- odlparent-9.0.1
- yangtools-7.0.1
- mdsal-8.0.0-SNAPSHOT

There are a few adjustments needed, which mostly deal with the interface
to NormalizedNode.

Change-Id: I918fb885a6df62e16e17119a7e04ba1672ef7c39
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
186 files changed:
akka/pom.xml
akka/repackaged-akka-jar/pom.xml
artifacts/pom.xml
benchmark/dsbenchmark/src/main/java/org/opendaylight/dsbenchmark/DomListBuilder.java
benchmark/dsbenchmark/src/main/java/org/opendaylight/dsbenchmark/simpletx/SimpletxDomRead.java
benchmark/dsbenchmark/src/main/java/org/opendaylight/dsbenchmark/txchain/TxchainDomRead.java
benchmark/pom.xml
bundle-parent/pom.xml
docs/pom.xml
features/features-controller-experimental/pom.xml
features/features-controller-testing/pom.xml
features/features-controller/pom.xml
features/odl-clustering-test-app/src/main/feature/feature.xml
features/odl-controller-blueprint/src/main/feature/feature.xml
features/odl-controller-broker-local/src/main/feature/feature.xml
features/odl-controller-exp-netty-config/src/main/feature/feature.xml
features/odl-controller-mdsal-common/src/main/feature/feature.xml
features/odl-mdsal-broker/src/main/feature/feature.xml
features/odl-mdsal-clustering-commons/src/main/feature/feature.xml
features/odl-mdsal-distributed-datastore/src/main/feature/feature.xml
features/odl-mdsal-model-inventory/src/main/feature/feature.xml
features/odl-toaster/src/main/feature/feature.xml
features/pom.xml
features/single-feature-parent/pom.xml
jolokia/pom.xml
karaf/pom.xml
model/model-inventory/pom.xml
model/pom.xml
opendaylight/blueprint/pom.xml
opendaylight/blueprint/src/main/java/org/opendaylight/controller/blueprint/ext/BindingContext.java
opendaylight/blueprint/src/main/java/org/opendaylight/controller/blueprint/ext/DataStoreAppConfigDefaultXMLReader.java
opendaylight/blueprint/src/main/java/org/opendaylight/controller/blueprint/ext/DataStoreAppConfigMetadata.java
opendaylight/config/netty-event-executor-config/pom.xml
opendaylight/config/netty-threadgroup-config/pom.xml
opendaylight/config/netty-timer-config/pom.xml
opendaylight/config/pom.xml
opendaylight/config/threadpool-config-api/pom.xml
opendaylight/config/threadpool-config-impl/pom.xml
opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ReadTransactionSuccess.java
opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/ReadTransactionSuccessProxyV1.java
opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/TransactionDataModification.java
opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/TransactionMerge.java
opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/commands/TransactionWrite.java
opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/ModifyTransactionRequestBuilderTest.java
opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/ModifyTransactionRequestTest.java
opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/ReadTransactionSuccessNoDataTest.java
opendaylight/md-sal/cds-access-api/src/test/java/org/opendaylight/controller/cluster/access/commands/ReadTransactionSuccessTest.java
opendaylight/md-sal/mdsal-it-base/pom.xml
opendaylight/md-sal/mdsal-it-parent/pom.xml
opendaylight/md-sal/parent/pom.xml
opendaylight/md-sal/pom.xml
opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/RaftActor.java
opendaylight/md-sal/sal-cluster-admin-impl/src/test/java/org/opendaylight/controller/cluster/datastore/admin/ClusterAdminRpcServiceTest.java
opendaylight/md-sal/sal-clustering-commons/pom.xml
opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/NormalizedNodeNavigator.java
opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/NormalizedNodeVisitor.java
opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/SerializationUtils.java
opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/AbstractNormalizedNodePruner.java
opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/util/AbstractDataTreeModificationCursor.java
opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/io/ChunkedOutputStream.java
opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/schema/provider/impl/RemoteSchemaProvider.java
opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/SerializationUtilsTest.java
opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/NormalizedNodePrunerTest.java
opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/node/utils/transformer/UintAdaptingPrunerTest.java
opendaylight/md-sal/sal-clustering-commons/src/test/java/org/opendaylight/controller/cluster/datastore/util/TestModel.java
opendaylight/md-sal/sal-clustering-config/pom.xml
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/AbstractDOMBrokerWriteTransaction.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/ClientBackedReadTransaction.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/ClientBackedReadWriteTransaction.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/ClientBackedWriteTransaction.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/DOMBrokerReadOnlyTransaction.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/DOMBrokerReadWriteTransaction.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/AbstractProxyTransaction.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientSnapshot.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientTransaction.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/LocalProxyTransaction.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/LocalReadOnlyProxyTransaction.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/LocalReadWriteProxyTransaction.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/databroker/actors/dds/RemoteProxyTransaction.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/FrontendReadOnlyTransaction.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/FrontendReadWriteTransaction.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/LocalTransactionContext.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/NoOpTransactionContext.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/RemoteTransactionContext.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/RootDataTreeChangeListenerActor.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTree.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardRecoveryCoordinator.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/TransactionContext.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/TransactionModificationOperation.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/TransactionProxy.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/config/ConfigurationImpl.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/config/ModuleShardConfiguration.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/ReadData.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/ReadDataReply.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/UpdateSchemaContext.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/modification/MergeModification.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/modification/WriteModification.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/AbstractDataTreeCandidateNode.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/AbstractVersionedShardDataTreeSnapshot.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/CommitTransactionPayload.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/DeletedDataTreeCandidateNode.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/MetadataShardDataTreeSnapshot.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/ModifiedDataTreeCandidateNode.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/persisted/ShardDataTreeSnapshot.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/shardstrategy/ShardStrategyFactory.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/utils/AbstractBatchedModificationsCursor.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/utils/DataTreeModificationOutput.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/utils/NormalizedNodeAggregator.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/utils/NormalizedNodeXMLOutput.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/utils/PruningDataTreeModification.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedReadTransactionTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedReadWriteTransactionTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/ClientBackedWriteTransactionTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientSnapshotTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/ClientTransactionTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/databroker/actors/dds/RemoteProxyTransactionTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractDistributedDataStoreIntegrationTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractShardTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/AbstractTransactionProxyTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DataTreeCohortIntegrationTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DatastoreSnapshotRestoreTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DistributedDataStoreIntegrationTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DistributedDataStoreRemotingIntegrationTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/DistributedDataStoreWithSegmentedJournalIntegrationTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/IntegrationTestKit.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/LocalTransactionContextTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardCommitCoordinationTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardRecoveryCoordinatorTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TransactionChainProxyTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TransactionProxyTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/actors/ShardSnapshotActorTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/config/ConfigurationImplBaseTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/config/ConfigurationImplTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/messages/BatchedModificationsTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/messages/ReadDataReplyTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/modification/AbstractModificationTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/modification/DeleteModificationTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/modification/MergeModificationTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/modification/MutableCompositeModificationTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/modification/WriteModificationTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/persisted/CommitTransactionPayloadTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/persisted/ShardDataTreeSnapshotTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/persisted/ShardSnapshotStateTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/shardmanager/ShardManagerTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/MockDataTreeChangeListener.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/NormalizedNodeAggregatorTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/PruningDataTreeModificationTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/md/cluster/datastore/model/CarsModel.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/md/cluster/datastore/model/CompositeModel.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/md/cluster/datastore/model/PeopleModel.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/md/cluster/datastore/model/TestModel.java
opendaylight/md-sal/sal-distributed-eos/src/main/java/org/opendaylight/controller/cluster/entityownership/AbstractEntityOwnerChangeListener.java
opendaylight/md-sal/sal-distributed-eos/src/main/java/org/opendaylight/controller/cluster/entityownership/DistributedEntityOwnershipService.java
opendaylight/md-sal/sal-distributed-eos/src/main/java/org/opendaylight/controller/cluster/entityownership/EntityOwnerChangeListener.java
opendaylight/md-sal/sal-distributed-eos/src/main/java/org/opendaylight/controller/cluster/entityownership/EntityOwnersModel.java
opendaylight/md-sal/sal-distributed-eos/src/main/java/org/opendaylight/controller/cluster/entityownership/EntityOwnershipShard.java
opendaylight/md-sal/sal-distributed-eos/src/main/java/org/opendaylight/controller/cluster/entityownership/EntityOwnershipStatistics.java
opendaylight/md-sal/sal-distributed-eos/src/test/java/org/opendaylight/controller/cluster/entityownership/AbstractEntityOwnershipTest.java
opendaylight/md-sal/sal-distributed-eos/src/test/java/org/opendaylight/controller/cluster/entityownership/CandidateListChangeListenerTest.java
opendaylight/md-sal/sal-distributed-eos/src/test/java/org/opendaylight/controller/cluster/entityownership/DistributedEntityOwnershipIntegrationTest.java
opendaylight/md-sal/sal-distributed-eos/src/test/java/org/opendaylight/controller/cluster/entityownership/EntityOwnerChangeListenerTest.java
opendaylight/md-sal/sal-distributed-eos/src/test/java/org/opendaylight/controller/cluster/entityownership/EntityOwnershipStatisticsTest.java
opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/RemoteRpcImplementation.java
opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/messages/AbstractExecute.java
opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/messages/AbstractResponse.java
opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/messages/ActionResponse.java
opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/messages/ExecuteRpc.java
opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/messages/RpcResponse.java
opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/AbstractOpsTest.java
opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/RemoteOpsImplementationTest.java
opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/registry/ActionRegistryTest.java
opendaylight/md-sal/sal-remoterpc-connector/src/test/java/org/opendaylight/controller/remote/rpc/registry/RpcRegistryTest.java
opendaylight/md-sal/samples/clustering-test-app/configuration/pom.xml
opendaylight/md-sal/samples/clustering-test-app/pom.xml
opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/CarEntryDataTreeCommitCohort.java
opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/MdsalLowLevelTestProvider.java
opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/impl/GetConstantService.java
opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/impl/IdIntsListener.java
opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/impl/RoutedGetConstantService.java
opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/impl/SingletonGetConstantService.java
opendaylight/md-sal/samples/clustering-test-app/provider/src/main/java/org/opendaylight/controller/clustering/it/provider/impl/WriteTransactionsHandler.java
opendaylight/md-sal/samples/pom.xml
pom.xml

index 9d619cf52c49663356da4b28ab6d3672bd28901c..78d8357bfd97d16c478c1d20ede69fdca337106e 100644 (file)
@@ -11,7 +11,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>odlparent-lite</artifactId>
-        <version>8.1.1</version>
+        <version>9.0.1</version>
         <relativePath/>
     </parent>
 
index 06bb47f9b87a6aa762fd0ee4975e10f7dfc824bb..143e14d12a5bd50b2a8feb4ae09674d999d9437e 100644 (file)
@@ -13,7 +13,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>odlparent</artifactId>
-        <version>8.1.1</version>
+        <version>9.0.1</version>
         <relativePath/>
     </parent>
 
index 9e734e43b82003ba801a00d7d40dfd1e1c7f173f..b56e4b981a0ae6a30ddf371c31f30d05f97eda6c 100644 (file)
@@ -14,7 +14,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>odlparent-lite</artifactId>
-        <version>8.1.1</version>
+        <version>9.0.1</version>
         <relativePath/>
     </parent>
 
index ad47c2ce2f085728037c660d97819c0b423ceef1..68868643782482d37a8263a4b4294271f69ecb36 100644 (file)
@@ -16,8 +16,9 @@ import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates;
 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.SystemMapNode;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.CollectionNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.CollectionNodeBuilder;
 
 public final class DomListBuilder {
     // Inner List Qname identifiers for yang model's 'name' and 'value'
@@ -44,7 +45,7 @@ public final class DomListBuilder {
     }
 
     private static MapNode buildInnerList(final int index, final int elements) {
-        CollectionNodeBuilder<MapEntryNode, MapNode> innerList = ImmutableNodes.mapNodeBuilder(InnerList.QNAME);
+        CollectionNodeBuilder<MapEntryNode, SystemMapNode> innerList = ImmutableNodes.mapNodeBuilder(InnerList.QNAME);
 
         final String itemStr = "Item-" + String.valueOf(index) + "-";
         for (int i = 0; i < elements; i++) {
index 32ae8e6336d2218d6452e019a7ddef4f882165ad..4e9a59a7441cea886bc99eb15d3ac45bed946765 100644 (file)
@@ -62,11 +62,11 @@ public class SimpletxDomRead extends DatastoreAbstractWriter {
         try (DOMDataTreeReadTransaction tx = domDataBroker.newReadOnlyTransaction()) {
             for (int l = 0; l < outerListElem; l++) {
                 YangInstanceIdentifier yid = pid.node(NodeIdentifierWithPredicates.of(OuterList.QNAME, olId, l));
-                FluentFuture<Optional<NormalizedNode<?, ?>>> submitFuture = tx.read(dsType, yid);
+                FluentFuture<Optional<NormalizedNode>> submitFuture = tx.read(dsType, yid);
                 try {
-                    Optional<NormalizedNode<?,?>> optionalDataObject = submitFuture.get();
+                    Optional<NormalizedNode> optionalDataObject = submitFuture.get();
                     if (optionalDataObject != null && optionalDataObject.isPresent()) {
-                        NormalizedNode<?, ?> ret = optionalDataObject.get();
+                        NormalizedNode ret = optionalDataObject.get();
                         LOG.trace("optionalDataObject is {}", ret);
                         txOk++;
                     } else {
index 4ff133db73f10bde52708381d5fe7bbb27dc6c8c..5c70edcd6c541425315034386362af11af66ee64 100644 (file)
@@ -61,8 +61,8 @@ public class TxchainDomRead extends DatastoreAbstractWriter implements DOMTransa
         try (DOMDataTreeReadTransaction tx = domDataBroker.newReadOnlyTransaction()) {
             for (int l = 0; l < outerListElem; l++) {
                 YangInstanceIdentifier yid = pid.node(NodeIdentifierWithPredicates.of(OuterList.QNAME, olId, l));
-                Optional<NormalizedNode<?,?>> optionalDataObject;
-                FluentFuture<Optional<NormalizedNode<?, ?>>> submitFuture = tx.read(dsType, yid);
+                Optional<NormalizedNode> optionalDataObject;
+                FluentFuture<Optional<NormalizedNode>> submitFuture = tx.read(dsType, yid);
                 try {
                     optionalDataObject = submitFuture.get();
                     if (optionalDataObject != null && optionalDataObject.isPresent()) {
index c58390afa2cb069cb5cd71886ec651e8d472f252..cc7ec71dc7c9b7cc222fe21412e8a6107d679417 100644 (file)
@@ -10,7 +10,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>odlparent-lite</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
index b2c8e431a4928a036d3f6d75a1103d5dd7237dd3..7bc1df3a670ef5331eb8cb84de82e424d9eedc9b 100644 (file)
@@ -11,7 +11,7 @@
     <parent>
         <groupId>org.opendaylight.mdsal</groupId>
         <artifactId>dom-parent</artifactId>
-        <version>7.0.6</version>
+        <version>8.0.0-SNAPSHOT</version>
         <relativePath/>
     </parent>
 
index e7871cfa118b6f707ef608973cb54274b26932ed..8cf8f4bcb1ace8f4b179afd23cf0370573228de4 100644 (file)
@@ -12,7 +12,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>odlparent</artifactId>
-        <version>8.1.1</version>
+        <version>9.0.1</version>
         <relativePath/>
     </parent>
 
                         <link>https://commons.apache.org/proper/commons-lang/javadocs/api-3.9/</link>
                         <link>https://commons.apache.org/proper/commons-codec/apidocs/</link>
 
-                        <link>https://www.javadoc.io/doc/org.opendaylight.odlparent/odlparent-docs/8.1.1/</link>
-                        <link>https://www.javadoc.io/doc/org.opendaylight.yangtools/yangtools-docs/6.0.5/</link>
-                        <link>https://www.javadoc.io/doc/org.opendaylight.mdsal/mdsal-docs/7.0.6/</link>
+                        <link>https://www.javadoc.io/doc/org.opendaylight.odlparent/odlparent-docs/9.0.1/</link>
+                        <link>https://www.javadoc.io/doc/org.opendaylight.yangtools/yangtools-docs/7.0.1/</link>
+                        <link>https://www.javadoc.io/doc/org.opendaylight.mdsal/mdsal-docs/8.0.0-SNAPSHOT/</link>
                     </links>
                     <groups>
                         <group>
index d0a959543f4d5ba8d2812fb5219d065e223cf178..306700e08fb0d4b51a1b6929afd0068b926a6907 100644 (file)
@@ -11,7 +11,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>feature-repo-parent</artifactId>
-        <version>8.1.1</version>
+        <version>9.0.1</version>
         <relativePath/>
     </parent>
 
index d5d0b9ed359279fc0ea2bd129a02f227fb9566fb..0d8857fe314264601f67f5afce99250cfe0e0f83 100644 (file)
@@ -11,7 +11,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>feature-repo-parent</artifactId>
-        <version>8.1.1</version>
+        <version>9.0.1</version>
         <relativePath/>
     </parent>
 
index bb558a79049642b6f29bbccf7356c92f908e447f..58156e2ed753e895d866b928270ed366ca104cdc 100644 (file)
@@ -11,7 +11,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>feature-repo-parent</artifactId>
-        <version>8.1.1</version>
+        <version>9.0.1</version>
         <relativePath/>
     </parent>
 
index 96ef65632e21b03e97b993e3c40dadccdf7269b9..7829413d47569b18588c819daa202fddba47343d 100644 (file)
@@ -8,6 +8,6 @@
  -->
 <features xmlns="http://karaf.apache.org/xmlns/features/v1.2.0" name="odl-clustering-test-app-${project.version}">
     <feature name="odl-clustering-test-app" version="${project.version}">
-        <feature version="[7,8)">odl-mdsal-model-rfc6991</feature>
+        <feature version="[8,9)">odl-mdsal-model-rfc6991</feature>
     </feature>
 </features>
index 86adcc657d98294669bd0df6d762d1c3cac4e4fe..c18573aa3a5958e25ae0b647107943f97aca6118 100644 (file)
@@ -8,10 +8,10 @@
  -->
 <features xmlns="http://karaf.apache.org/xmlns/features/v1.2.0" name="odl-controller-blueprint-${project.version}">
     <feature name="odl-controller-blueprint" version="${project.version}">
-        <feature version="[6,7)">odl-yangtools-codec</feature>
-        <feature version="[7,8)">odl-mdsal-binding-api</feature>
-        <feature version="[7,8)">odl-mdsal-binding-runtime</feature>
-        <feature version="[7,8)">odl-mdsal-dom-api</feature>
+        <feature version="[7,8)">odl-yangtools-codec</feature>
+        <feature version="[8,9)">odl-mdsal-binding-api</feature>
+        <feature version="[8,9)">odl-mdsal-binding-runtime</feature>
+        <feature version="[8,9)">odl-mdsal-dom-api</feature>
         <bundle start-level="40">mvn:org.opendaylight.controller/blueprint/${project.version}</bundle>
     </feature>
 </features>
index 62cf54e3a6bb7787dfeb9b629e92c949a37b4488..9a765beb481c7ae395c9328b63fb960db75f829e 100644 (file)
@@ -8,9 +8,9 @@
  -->
 <features xmlns="http://karaf.apache.org/xmlns/features/v1.2.0" name="odl-mdsal-${project.version}">
     <feature name="odl-controller-broker-local" version="${project.version}">
-        <feature version="[7,8)">odl-mdsal-dom</feature>
-        <feature version="[7,8)">odl-mdsal-eos-binding</feature>
-        <feature version="[7,8)">odl-mdsal-eos-dom</feature>
-        <feature version="[7,8)">odl-mdsal-singleton-dom</feature>
+        <feature version="[8,9)">odl-mdsal-dom</feature>
+        <feature version="[8,9)">odl-mdsal-eos-binding</feature>
+        <feature version="[8,9)">odl-mdsal-eos-dom</feature>
+        <feature version="[8,9)">odl-mdsal-singleton-dom</feature>
     </feature>
 </features>
index 70c4c6bc06a62c255bf5e88c5abdc74ebbfb5591..2eac124f29408eab290d1207a061abfa0053d3dd 100644 (file)
@@ -8,6 +8,6 @@
  -->
 <features xmlns="http://karaf.apache.org/xmlns/features/v1.4.0" name="odl-controller-exp-netty-config">
     <feature name="odl-controller-exp-netty-config">
-        <feature version="[8,9)">odl-netty-4</feature>
+        <feature version="[9,10)">odl-netty-4</feature>
     </feature>
 </features>
index 2dd5b08826fbd42281aeeea21f47060e94ff5332..ffc34187e5031954f1db320a961ec25e01f90102 100644 (file)
@@ -8,7 +8,7 @@
  -->
 <features xmlns="http://karaf.apache.org/xmlns/features/v1.2.0" name="odl-controller-mdsal-common-${project.version}">
     <feature name="odl-controller-mdsal-common" version="${project.version}">
-        <feature version="[7,8)">odl-mdsal-common</feature>
-        <feature version="[7,8)">odl-mdsal-binding-runtime</feature>
+        <feature version="[8,9)">odl-mdsal-common</feature>
+        <feature version="[8,9)">odl-mdsal-binding-runtime</feature>
     </feature>
 </features>
index 2e38fd396fd11a29de9d620d4fd07f027dca0691..11af9450e10a7287b99f8351b3984d04ee5ec036 100644 (file)
@@ -8,7 +8,7 @@
  -->
 <features xmlns="http://karaf.apache.org/xmlns/features/v1.2.0" name="odl-mdsal-${project.version}">
     <feature name="odl-mdsal-broker" version="${project.version}">
-        <feature version="[7,8)">odl-mdsal-singleton-dom</feature>
-        <feature version="[7,8)">odl-mdsal-eos-binding</feature>
+        <feature version="[8,9)">odl-mdsal-singleton-dom</feature>
+        <feature version="[8,9)">odl-mdsal-eos-binding</feature>
     </feature>
 </features>
index e6ed3054a98f433ef137de3ed9da1e71e120a0bf..9a048e910a0a6ffbba7fe7df3fab32d1d972efd6 100644 (file)
@@ -8,10 +8,10 @@
   -->
 <features xmlns="http://karaf.apache.org/xmlns/features/v1.4.0" name="odl-controller-${project.version}">
     <feature name="odl-mdsal-clustering-commons" version="${project.version}">
-        <feature version="[8,9)">odl-apache-commons-lang3</feature>
-        <feature version="[8,9)">odl-dropwizard-metrics</feature>
-        <feature version="[8,9)">odl-servlet-api</feature>
-        <feature version="[6,7)">odl-yangtools-data</feature>
-        <feature version="[6,7)">odl-yangtools-codec</feature>
+        <feature version="[9,10)">odl-apache-commons-lang3</feature>
+        <feature version="[9,10)">odl-dropwizard-metrics</feature>
+        <feature version="[9,10)">odl-servlet-api</feature>
+        <feature version="[7,8)">odl-yangtools-data</feature>
+        <feature version="[7,8)">odl-yangtools-codec</feature>
     </feature>
 </features>
index 9d1375b55f0f2f0a70a9e46759021ce20aee1db9..756bd7cf5fd84f5315b03f8c7b28b31f838e1738 100644 (file)
@@ -8,11 +8,11 @@
   -->
 <features xmlns="http://karaf.apache.org/xmlns/features/v1.4.0" name="odl-controller-${project.version}">
     <feature name="odl-mdsal-distributed-datastore" version="${project.version}">
-        <feature version="[8,9)">odl-apache-commons-text</feature>
-        <feature version="[6,7)">odl-yangtools-codec</feature>
-        <feature version="[7,8)">odl-mdsal-eos-dom</feature>
-        <feature version="[7,8)">odl-mdsal-dom-broker</feature>
-        <feature version="[7,8)">odl-mdsal-binding-dom-adapter</feature>
+        <feature version="[9,10)">odl-apache-commons-text</feature>
+        <feature version="[7,8)">odl-yangtools-codec</feature>
+        <feature version="[8,9)">odl-mdsal-eos-dom</feature>
+        <feature version="[8,9)">odl-mdsal-dom-broker</feature>
+        <feature version="[8,9)">odl-mdsal-binding-dom-adapter</feature>
         <configfile finalname="configuration/initial/akka.conf">
             mvn:org.opendaylight.controller/sal-clustering-config/${project.version}/xml/akkaconf
         </configfile>
@@ -29,4 +29,4 @@
             mvn:org.opendaylight.controller/sal-clustering-config/${project.version}/cfg/datastore
         </configfile>
     </feature>
-</features>
\ No newline at end of file
+</features>
index 06394852753b4c87dd11e99f9d51327b6d5c2914..2702dbdb327af3142dfd4a10966cb28e8d4fc91c 100644 (file)
@@ -8,6 +8,6 @@
  -->
 <features xmlns="http://karaf.apache.org/xmlns/features/v1.2.0" name="odl-mdsal-model-inventory-${project.version}">
     <feature name="odl-mdsal-model-inventory" version="${project.version}">
-        <feature version="[7,8)">odl-mdsal-model-rfc6991</feature>
+        <feature version="[8,9)">odl-mdsal-model-rfc6991</feature>
     </feature>
 </features>
index 6c4e82184d6889571b8757e0e6a170bdb8383505..07800a651bb96d90ee4109da30ee44a6d81c8328 100644 (file)
@@ -8,6 +8,6 @@
  -->
 <features xmlns="http://karaf.apache.org/xmlns/features/v1.2.0" name="odl-toaster-${project.version}">
     <feature name="odl-toaster" version="${project.version}">
-        <feature version="[7,8)">odl-mdsal-binding-runtime</feature>
+        <feature version="[8,9)">odl-mdsal-binding-runtime</feature>
     </feature>
 </features>
index ff8b8e1ddc0e07df6c500616e4ed3129109bf991..e2e799b4041efa46d47cb8b93debfb22a8a64877 100644 (file)
@@ -11,7 +11,7 @@
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>odlparent-lite</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
index d6c88e49f7843718618c5d81e1cc4ad030392399..1690690f725e3fbc8a00b3b53a857b24fc533d25 100644 (file)
@@ -11,7 +11,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>single-feature-parent</artifactId>
-        <version>8.1.1</version>
+        <version>9.0.1</version>
         <relativePath/>
     </parent>
 
index b66a71b1c38398aec282695fc3c5507bc826c9b9..84be0c5c35113d652ced0b6f73913e1ace52d3c1 100644 (file)
@@ -11,7 +11,7 @@
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>odlparent</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
index b8613f84ec4111bedef7c85dc04841f60781abcf..0453321a0476b8805f1189fd1b74256d521fa2e4 100644 (file)
@@ -11,7 +11,7 @@
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>karaf4-parent</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
index db709bef8efae38e5878176cfacbab2249567d6d..379181d6473d5dc65329b2205550b4fb093697e9 100644 (file)
@@ -13,7 +13,7 @@
     <parent>
         <groupId>org.opendaylight.mdsal</groupId>
         <artifactId>binding-parent</artifactId>
-        <version>7.0.6</version>
+        <version>8.0.0-SNAPSHOT</version>
         <relativePath/>
     </parent>
 
index 878256e631f621727a89cfd25edc865e1cb909d7..9c51951084a079eac6fde6edd73502351c5160d8 100644 (file)
@@ -12,7 +12,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>odlparent-lite</artifactId>
-        <version>8.1.1</version>
+        <version>9.0.1</version>
         <relativePath/>
     </parent>
 
index 923d79d643cb4da5536754e01e6886e520414a41..5b4cb45ec2fccc0020113fdf030d150159222c25 100644 (file)
@@ -12,7 +12,7 @@
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>bundle-parent</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
       <dependency>
         <groupId>org.opendaylight.yangtools</groupId>
         <artifactId>yangtools-artifacts</artifactId>
-        <version>6.0.5</version>
+        <version>7.0.1</version>
         <type>pom</type>
         <scope>import</scope>
       </dependency>
       <dependency>
         <groupId>org.opendaylight.mdsal</groupId>
         <artifactId>mdsal-artifacts</artifactId>
-        <version>7.0.6</version>
+        <version>8.0.0-SNAPSHOT</version>
         <type>pom</type>
         <scope>import</scope>
       </dependency>
index e519857aaee9b3b99df39e9eaa4bf02c77615b66..dd672e411081ba2e16fbaa7504cdf704b4c888eb 100644 (file)
@@ -7,12 +7,14 @@
  */
 package org.opendaylight.controller.blueprint.ext;
 
-import com.google.common.base.Preconditions;
+import static com.google.common.base.Preconditions.checkArgument;
+
 import com.google.common.base.Strings;
+import com.google.common.collect.Iterables;
 import java.io.IOException;
 import java.lang.reflect.InvocationTargetException;
 import java.net.URISyntaxException;
-import java.util.List;
+import java.util.Set;
 import javax.xml.parsers.ParserConfigurationException;
 import javax.xml.stream.XMLStreamException;
 import javax.xml.transform.dom.DOMSource;
@@ -32,8 +34,10 @@ import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNormalizedNodeS
 import org.opendaylight.yangtools.yang.data.impl.schema.NormalizedNodeResult;
 import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
 import org.opendaylight.yangtools.yang.model.api.ListSchemaNode;
+import org.opendaylight.yangtools.yang.model.api.SchemaTreeInference;
+import org.opendaylight.yangtools.yang.model.api.stmt.KeyEffectiveStatement;
+import org.opendaylight.yangtools.yang.model.api.stmt.SchemaTreeEffectiveStatement;
 import org.osgi.service.blueprint.container.ComponentDefinitionException;
 import org.w3c.dom.Element;
 import org.xml.sax.SAXException;
@@ -84,25 +88,24 @@ public abstract class BindingContext {
         bindingQName = BindingReflections.findQName(appConfigBindingClass);
     }
 
-    public NormalizedNode<?, ?> parseDataElement(final Element element, final DataSchemaNode dataSchema,
-            final EffectiveModelContext schemaContext) throws XMLStreamException, IOException,
-                ParserConfigurationException, SAXException, URISyntaxException {
+    public NormalizedNode parseDataElement(final Element element, final SchemaTreeInference dataSchema)
+            throws XMLStreamException, IOException, ParserConfigurationException, SAXException, URISyntaxException {
         final NormalizedNodeResult resultHolder = new NormalizedNodeResult();
         final NormalizedNodeStreamWriter writer = ImmutableNormalizedNodeStreamWriter.from(resultHolder);
-        final XmlParserStream xmlParser = XmlParserStream.create(writer, schemaContext, dataSchema);
+        final XmlParserStream xmlParser = XmlParserStream.create(writer, dataSchema);
         xmlParser.traverse(new DOMSource(element));
 
-        final NormalizedNode<?, ?> result = resultHolder.getResult();
+        final NormalizedNode result = resultHolder.getResult();
         if (result instanceof MapNode) {
             final MapNode mapNode = (MapNode) result;
-            final MapEntryNode mapEntryNode = mapNode.getValue().iterator().next();
+            final MapEntryNode mapEntryNode = mapNode.body().iterator().next();
             return mapEntryNode;
         }
 
         return result;
     }
 
-    public abstract NormalizedNode<?, ?> newDefaultNode(DataSchemaNode dataSchema);
+    public abstract NormalizedNode newDefaultNode(SchemaTreeInference dataSchema);
 
     /**
      * BindingContext implementation for a container binding.
@@ -115,7 +118,7 @@ public abstract class BindingContext {
         }
 
         @Override
-        public NormalizedNode<?, ?> newDefaultNode(final DataSchemaNode dataSchema) {
+        public NormalizedNode newDefaultNode(final SchemaTreeInference dataSchema) {
             return ImmutableNodes.containerNode(bindingQName);
         }
     }
@@ -146,11 +149,15 @@ public abstract class BindingContext {
         }
 
         @Override
-        public NormalizedNode<?, ?> newDefaultNode(final DataSchemaNode dataSchema) {
+        public NormalizedNode newDefaultNode(final SchemaTreeInference dataSchema) {
+            final SchemaTreeEffectiveStatement<?> stmt = Iterables.getLast(dataSchema.statementPath());
+
             // We assume there's only one key for the list.
-            List<QName> keys = ((ListSchemaNode)dataSchema).getKeyDefinition();
-            Preconditions.checkArgument(keys.size() == 1, "Expected only 1 key for list %s", appConfigBindingClass);
-            QName listKeyQName = keys.get(0);
+            final Set<QName> keys = stmt.findFirstEffectiveSubstatementArgument(KeyEffectiveStatement.class)
+                .orElseThrow();
+
+            checkArgument(keys.size() == 1, "Expected only 1 key for list %s", appConfigBindingClass);
+            QName listKeyQName = keys.iterator().next();
             return ImmutableNodes.mapEntryBuilder(bindingQName, listKeyQName, appConfigListKeyValue).build();
         }
     }
index 6f323716ee481a2bb5e015b9b57e985fdfaf8d3b..c1474929551c25e64f4998f926ee0b4e0407b29d 100644 (file)
@@ -20,13 +20,13 @@ import org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSeriali
 import org.opendaylight.mdsal.dom.api.DOMSchemaService;
 import org.opendaylight.yangtools.util.xml.UntrustedXML;
 import org.opendaylight.yangtools.yang.binding.DataObject;
-import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
-import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
 import org.opendaylight.yangtools.yang.model.api.Module;
-import org.opendaylight.yangtools.yang.model.api.SchemaContext;
+import org.opendaylight.yangtools.yang.model.api.SchemaTreeInference;
+import org.opendaylight.yangtools.yang.model.api.stmt.SchemaTreeEffectiveStatement;
+import org.opendaylight.yangtools.yang.model.util.SchemaInferenceStack;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.w3c.dom.Document;
@@ -53,8 +53,8 @@ public class DataStoreAppConfigDefaultXMLReader<T extends DataObject> {
 
     @FunctionalInterface
     public interface FallbackConfigProvider {
-        NormalizedNode<?,?> get(EffectiveModelContext schemaContext, DataSchemaNode dataSchema) throws IOException,
-                XMLStreamException, ParserConfigurationException, SAXException, URISyntaxException;
+        NormalizedNode get(SchemaTreeInference dataSchema)
+            throws IOException, XMLStreamException, ParserConfigurationException, SAXException, URISyntaxException;
     }
 
     @FunctionalInterface
@@ -95,9 +95,9 @@ public class DataStoreAppConfigDefaultXMLReader<T extends DataObject> {
 
     public T createDefaultInstance() throws ConfigXMLReaderException, ParserConfigurationException, XMLStreamException,
             IOException, SAXException, URISyntaxException {
-        return createDefaultInstance((schemaContext, dataSchema) -> {
-            throw new IllegalArgumentException("Failed to read XML "
-                    + "(not creating model from defaults as runtime would, for better clarity in tests)");
+        return createDefaultInstance(dataSchema -> {
+            throw new IllegalArgumentException(
+                "Failed to read XML (not creating model from defaults as runtime would, for better clarity in tests)");
         });
     }
 
@@ -117,19 +117,22 @@ public class DataStoreAppConfigDefaultXMLReader<T extends DataObject> {
         checkNotNull(module, "%s: Could not obtain the module schema for namespace %s, revision %s",
                 logName, bindingContext.bindingQName.getNamespace(), bindingContext.bindingQName.getRevision());
 
-        QName qname = bindingContext.bindingQName;
-        DataSchemaNode dataSchema = module.findDataChildByName(qname).orElseThrow(
-            () -> new ConfigXMLReaderException(logName + ": Could not obtain the schema for " + qname));
-
-        checkNotNull(dataSchema, "%s: Could not obtain the schema for %s", logName, bindingContext.bindingQName);
+        final SchemaInferenceStack schemaStack = SchemaInferenceStack.of(schemaContext);
+        final SchemaTreeEffectiveStatement<?> dataSchema;
+        try {
+            dataSchema = schemaStack.enterSchemaTree(bindingContext.bindingQName);
+        } catch (IllegalArgumentException e) {
+            throw new ConfigXMLReaderException(
+                logName + ": Could not obtain the schema for " + bindingContext.bindingQName, e);
+        }
 
-        checkCondition(bindingContext.schemaType.isAssignableFrom(dataSchema.getClass()),
+        checkCondition(bindingContext.schemaType.isInstance(dataSchema),
                 "%s: Expected schema type %s for %s but actual type is %s", logName,
                 bindingContext.schemaType, bindingContext.bindingQName, dataSchema.getClass());
 
-        NormalizedNode<?, ?> dataNode = parsePossibleDefaultAppConfigXMLFile(schemaContext, dataSchema);
+        NormalizedNode dataNode = parsePossibleDefaultAppConfigXMLFile(schemaStack);
         if (dataNode == null) {
-            dataNode = fallback.get(schemaService.getGlobalContext(), dataSchema);
+            dataNode = fallback.get(schemaStack.toSchemaTreeInference());
         }
 
         DataObject appConfig = bindingSerializer.fromNormalizedNode(yangPath, dataNode).getValue();
@@ -153,12 +156,12 @@ public class DataStoreAppConfigDefaultXMLReader<T extends DataObject> {
         }
     }
 
-    private NormalizedNode<?, ?> parsePossibleDefaultAppConfigXMLFile(final EffectiveModelContext schemaContext,
-            final DataSchemaNode dataSchema) throws ConfigXMLReaderException {
-
+    private NormalizedNode parsePossibleDefaultAppConfigXMLFile(final SchemaInferenceStack schemaStack)
+            throws ConfigXMLReaderException {
         String appConfigFileName = defaultAppConfigFileName;
         if (Strings.isNullOrEmpty(appConfigFileName)) {
-            String moduleName = findYangModuleName(bindingContext.bindingQName, schemaContext);
+            String moduleName = schemaStack.currentModule().argument().getLocalName();
+
             appConfigFileName = moduleName + "_" + bindingContext.bindingQName.getLocalName() + ".xml";
         }
 
@@ -176,8 +179,8 @@ public class DataStoreAppConfigDefaultXMLReader<T extends DataObject> {
         URL url = optionalURL.get();
         try (InputStream is = url.openStream()) {
             Document root = UntrustedXML.newDocumentBuilder().parse(is);
-            NormalizedNode<?, ?> dataNode = bindingContext.parseDataElement(root.getDocumentElement(), dataSchema,
-                    schemaContext);
+            NormalizedNode dataNode = bindingContext.parseDataElement(root.getDocumentElement(),
+                schemaStack.toSchemaTreeInference());
 
             LOG.debug("{}: Parsed data node: {}", logName, dataNode);
 
@@ -189,16 +192,4 @@ public class DataStoreAppConfigDefaultXMLReader<T extends DataObject> {
             throw new ConfigXMLReaderException(msg, e);
         }
     }
-
-    private String findYangModuleName(final QName qname, final SchemaContext schemaContext)
-            throws ConfigXMLReaderException {
-        for (Module m : schemaContext.getModules()) {
-            if (qname.getModule().equals(m.getQNameModule())) {
-                return m.getName();
-            }
-        }
-        throw new ConfigXMLReaderException(
-                String.format("%s: Could not find yang module for QName %s", logName, qname));
-    }
-
 }
index 0d3880e0a2f38c4c319fcdafa4ed9620c624d3ba..5b20827c7fdadd217219ee660a89df6fd5bda919 100644 (file)
@@ -36,8 +36,7 @@ import org.opendaylight.mdsal.dom.api.DOMSchemaService;
 import org.opendaylight.yangtools.concepts.ListenerRegistration;
 import org.opendaylight.yangtools.yang.binding.DataObject;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
-import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
-import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
+import org.opendaylight.yangtools.yang.model.api.SchemaTreeInference;
 import org.osgi.service.blueprint.container.ComponentDefinitionException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -257,9 +256,9 @@ public class DataStoreAppConfigMetadata extends AbstractDependentComponentFactor
             DataStoreAppConfigDefaultXMLReader<?> reader = new DataStoreAppConfigDefaultXMLReader<>(logName(),
                     defaultAppConfigFileName, getOSGiService(DOMSchemaService.class), bindingSerializer, bindingContext,
                     inputStreamProvider);
-            return reader.createDefaultInstance((schemaContext, dataSchema) -> {
+            return reader.createDefaultInstance(dataSchema -> {
                 // Fallback if file cannot be read, try XML from Config
-                NormalizedNode<?, ?> dataNode = parsePossibleDefaultAppConfigElement(schemaContext, dataSchema);
+                NormalizedNode dataNode = parsePossibleDefaultAppConfigElement(dataSchema);
                 if (dataNode == null) {
                     // or, as last resort, defaults from the model
                     return bindingContext.newDefaultNode(dataSchema);
@@ -279,9 +278,8 @@ public class DataStoreAppConfigMetadata extends AbstractDependentComponentFactor
         }
     }
 
-    private @Nullable NormalizedNode<?, ?> parsePossibleDefaultAppConfigElement(
-            final EffectiveModelContext schemaContext, final DataSchemaNode dataSchema) throws URISyntaxException,
-                IOException, ParserConfigurationException, SAXException, XMLStreamException {
+    private @Nullable NormalizedNode parsePossibleDefaultAppConfigElement(final SchemaTreeInference dataSchema)
+            throws URISyntaxException, IOException, ParserConfigurationException, SAXException, XMLStreamException {
         if (defaultAppConfigElement == null) {
             return null;
         }
@@ -290,8 +288,7 @@ public class DataStoreAppConfigMetadata extends AbstractDependentComponentFactor
 
         LOG.debug("{}: Got app config schema: {}", logName(), dataSchema);
 
-        NormalizedNode<?, ?> dataNode = bindingContext.parseDataElement(defaultAppConfigElement, dataSchema,
-                schemaContext);
+        NormalizedNode dataNode = bindingContext.parseDataElement(defaultAppConfigElement, dataSchema);
 
         LOG.debug("{}: Parsed data node: {}", logName(), dataNode);
 
index 20ea6601e55722c1076caddabea68c851e8119b5..ebe4bcc053dd55a6dc67e01aafc4314898c8cc6b 100644 (file)
@@ -5,7 +5,7 @@
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>bundle-parent</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
index fdb58f2da08d8c4cf830fc8046f276bb55b08457..186eac30bc2dca52ea72ddc03fb7f1bfc6e481df 100644 (file)
@@ -5,7 +5,7 @@
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>bundle-parent</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
index d6a3e2de8e3b53869ada26d5a7459fe1b1ef5995..7b96b6a3f8af3c670ff975704400bf0825b4d866 100644 (file)
@@ -5,7 +5,7 @@
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>bundle-parent</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
index d05c389988047fa660de3daa7f01483a45387b60..be8c5024165fda2f2fa2d25fa89e754b6f65ea71 100644 (file)
@@ -4,7 +4,7 @@
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>odlparent-lite</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
index edac7f10e63e149a6bc53de378ceb8b86435777a..226b75047dec39a9ad3f81a6ceed53a02a568707 100644 (file)
@@ -5,7 +5,7 @@
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>bundle-parent</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
index c8c08948bb8a83e54d80804ecd32a775822c7551..000c6ae32c881adb9cc0f387a03b831b5d358844 100644 (file)
@@ -5,7 +5,7 @@
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>bundle-parent</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
index 5283257061ccf06eca65be0fafaf110abce6cc6b..1b3410ee3c0bdc7c8628aa3ae5f3877664118f60 100644 (file)
@@ -28,15 +28,15 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 public final class ReadTransactionSuccess extends TransactionSuccess<ReadTransactionSuccess>
         implements SliceableMessage {
     private static final long serialVersionUID = 1L;
-    private final Optional<NormalizedNode<?, ?>> data;
+    private final Optional<NormalizedNode> data;
 
     public ReadTransactionSuccess(final TransactionIdentifier identifier, final long sequence,
-            final Optional<NormalizedNode<?, ?>> data) {
+            final Optional<NormalizedNode> data) {
         super(identifier, sequence);
         this.data = requireNonNull(data);
     }
 
-    public Optional<NormalizedNode<?, ?>> getData() {
+    public Optional<NormalizedNode> getData() {
         return data;
     }
 
index 357c3d977c3bfea2b4345f1f74d2394e02ce3aad..d442f36739281915a101678fc375fde87f51d26f 100644 (file)
@@ -26,7 +26,7 @@ import org.opendaylight.yangtools.yang.data.codec.binfmt.NormalizedNodeStreamVer
 final class ReadTransactionSuccessProxyV1 extends AbstractTransactionSuccessProxy<ReadTransactionSuccess> {
     private static final long serialVersionUID = 1L;
 
-    private Optional<NormalizedNode<?, ?>> data;
+    private Optional<NormalizedNode> data;
     private transient NormalizedNodeStreamVersion streamVersion;
 
     // checkstyle flags the public modifier as redundant however it is explicitly needed for Java serialization to
index eb2b3082c6277f3419171e04e9dbce6af3b9c1e9..9f0cb81876254d93c38f604002b56f504bdb6806 100644 (file)
@@ -22,14 +22,14 @@ import org.opendaylight.yangtools.yang.data.codec.binfmt.NormalizedNodeDataOutpu
  */
 @Beta
 public abstract class TransactionDataModification extends TransactionModification {
-    private final NormalizedNode<?, ?> data;
+    private final NormalizedNode data;
 
-    TransactionDataModification(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    TransactionDataModification(final YangInstanceIdentifier path, final NormalizedNode data) {
         super(path);
         this.data = requireNonNull(data);
     }
 
-    public final NormalizedNode<?, ?> getData() {
+    public final NormalizedNode getData() {
         return data;
     }
 
index 1d9bffd346c95bcb0deee73ee72f32e88c96ed8a..bf2580f44b5437ec2478989706b4f6f0e79423ad 100644 (file)
@@ -18,7 +18,7 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
  */
 @Beta
 public final class TransactionMerge extends TransactionDataModification {
-    public TransactionMerge(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    public TransactionMerge(final YangInstanceIdentifier path, final NormalizedNode data) {
         super(path, data);
     }
 
index b46cf38882b78548babf569e03afc184c268c6f7..4960c4ad989ed53ecffd23e8ec06fa3b90b3b2de 100644 (file)
@@ -18,7 +18,7 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
  */
 @Beta
 public final class TransactionWrite extends TransactionDataModification {
-    public TransactionWrite(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    public TransactionWrite(final YangInstanceIdentifier path, final NormalizedNode data) {
         super(path, data);
     }
 
index f7f88ed0227507ae9c6b459b618c3396ef5493ff..5f6f6454cece22aee1f4e550cb63956d9b1b3f5d 100644 (file)
@@ -8,12 +8,12 @@
 package org.opendaylight.controller.cluster.access.commands;
 
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
 
 import akka.actor.ActorRef;
 import akka.actor.ActorSystem;
 import akka.actor.Props;
 import akka.testkit.TestActors;
-import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
 import org.opendaylight.controller.cluster.access.concepts.ClientIdentifier;
@@ -36,7 +36,7 @@ public class ModifyTransactionRequestBuilderTest {
     private final TransactionIdentifier transactionIdentifier =
             new TransactionIdentifier(new LocalHistoryIdentifier(clientId, 0L), 0L);
     private final ActorRef actorRef = ActorSystem.create("test").actorOf(Props.create(TestActors.EchoActor.class));
-    private final NormalizedNode<?, ?> node = Builders.containerBuilder().withNodeIdentifier(
+    private final NormalizedNode node = Builders.containerBuilder().withNodeIdentifier(
             YangInstanceIdentifier.NodeIdentifier.create(QName.create("namespace", "localName"))).build();
     private final TransactionModification transactionModification =
             new TransactionWrite(YangInstanceIdentifier.empty(), node);
@@ -53,37 +53,37 @@ public class ModifyTransactionRequestBuilderTest {
     @Test
     public void testGetIdentifier() {
         final TransactionIdentifier identifier = modifyTransactionRequestBuilder.getIdentifier();
-        Assert.assertEquals(transactionIdentifier, identifier);
+        assertEquals(transactionIdentifier, identifier);
     }
 
     @Test
     public void testBuildReady() {
         modifyTransactionRequestBuilder.setReady();
         final ModifyTransactionRequest modifyTransactionRequest = modifyTransactionRequestBuilder.build();
-        Assert.assertEquals(PersistenceProtocol.READY, modifyTransactionRequest.getPersistenceProtocol().get());
-        Assert.assertEquals(transactionModification, modifyTransactionRequest.getModifications().get(0));
+        assertEquals(PersistenceProtocol.READY, modifyTransactionRequest.getPersistenceProtocol().get());
+        assertEquals(transactionModification, modifyTransactionRequest.getModifications().get(0));
     }
 
     @Test
     public void testBuildAbort() {
         modifyTransactionRequestBuilder.setAbort();
         final ModifyTransactionRequest modifyTransactionRequest = modifyTransactionRequestBuilder.build();
-        Assert.assertEquals(PersistenceProtocol.ABORT, modifyTransactionRequest.getPersistenceProtocol().get());
-        Assert.assertTrue(modifyTransactionRequest.getModifications().isEmpty());
+        assertEquals(PersistenceProtocol.ABORT, modifyTransactionRequest.getPersistenceProtocol().get());
+        assertTrue(modifyTransactionRequest.getModifications().isEmpty());
     }
 
     @Test
     public void testBuildCommitTrue() {
         modifyTransactionRequestBuilder.setCommit(true);
         final ModifyTransactionRequest modifyTransactionRequest = modifyTransactionRequestBuilder.build();
-        Assert.assertEquals(PersistenceProtocol.THREE_PHASE, modifyTransactionRequest.getPersistenceProtocol().get());
+        assertEquals(PersistenceProtocol.THREE_PHASE, modifyTransactionRequest.getPersistenceProtocol().get());
     }
 
     @Test
     public void testBuildCommitFalse() {
         modifyTransactionRequestBuilder.setCommit(false);
         final ModifyTransactionRequest modifyTransactionRequest = modifyTransactionRequestBuilder.build();
-        Assert.assertEquals(PersistenceProtocol.SIMPLE, modifyTransactionRequest.getPersistenceProtocol().get());
+        assertEquals(PersistenceProtocol.SIMPLE, modifyTransactionRequest.getPersistenceProtocol().get());
     }
 
 }
index d0e8401d985128d19bd4ccb14b46fcc94b0a2d74..7d0164f8674f0fce70e258b6dcb0019862dfd7f5 100644 (file)
@@ -7,6 +7,9 @@
  */
 package org.opendaylight.controller.cluster.access.commands;
 
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
 import static org.opendaylight.controller.cluster.access.commands.TransactionModification.TYPE_WRITE;
 
 import com.google.common.base.MoreObjects;
@@ -18,12 +21,13 @@ import org.junit.Test;
 import org.opendaylight.controller.cluster.access.ABIVersion;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
-import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
+import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
+import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
 import org.opendaylight.yangtools.yang.data.impl.schema.Builders;
 
 public class ModifyTransactionRequestTest extends AbstractTransactionRequestTest<ModifyTransactionRequest> {
-    private static final NormalizedNode<?, ?> NODE = Builders.containerBuilder().withNodeIdentifier(
-            YangInstanceIdentifier.NodeIdentifier.create(QName.create("namespace", "localName"))).build();
+    private static final ContainerNode NODE = Builders.containerBuilder().withNodeIdentifier(
+            NodeIdentifier.create(QName.create("namespace", "localName"))).build();
 
     private static final List<TransactionModification> MODIFICATIONS = Lists.newArrayList(
             new TransactionWrite(YangInstanceIdentifier.empty(), NODE));
@@ -41,22 +45,22 @@ public class ModifyTransactionRequestTest extends AbstractTransactionRequestTest
     @Test
     public void getPersistenceProtocolTest() {
         final Optional<PersistenceProtocol> result = OBJECT.getPersistenceProtocol();
-        Assert.assertTrue(result.isPresent());
-        Assert.assertEquals(PROTOCOL, result.get());
+        assertTrue(result.isPresent());
+        assertEquals(PROTOCOL, result.get());
     }
 
     @Test
     public void getModificationsTest() {
         final List<TransactionModification> result = OBJECT.getModifications();
-        Assert.assertNotNull(result);
-        Assert.assertEquals(MODIFICATIONS, result);
+        assertNotNull(result);
+        assertEquals(MODIFICATIONS, result);
     }
 
     @Test
     public void addToStringAttributesTest() {
         final MoreObjects.ToStringHelper result = OBJECT.addToStringAttributes(MoreObjects.toStringHelper(OBJECT));
-        Assert.assertTrue(result.toString().contains("modifications=1"));
-        Assert.assertTrue(result.toString().contains("protocol=" + PROTOCOL));
+        assertTrue(result.toString().contains("modifications=1"));
+        assertTrue(result.toString().contains("protocol=" + PROTOCOL));
     }
 
     @Test
@@ -67,16 +71,16 @@ public class ModifyTransactionRequestTest extends AbstractTransactionRequestTest
 
     @Override
     protected void doAdditionalAssertions(final Object deserialize) {
-        Assert.assertTrue(deserialize instanceof ModifyTransactionRequest);
+        assertTrue(deserialize instanceof ModifyTransactionRequest);
         final ModifyTransactionRequest casted = (ModifyTransactionRequest) deserialize;
 
-        Assert.assertEquals(OBJECT.getReplyTo(), casted.getReplyTo());
-        Assert.assertEquals(OBJECT.getPersistenceProtocol(), casted.getPersistenceProtocol());
+        assertEquals(OBJECT.getReplyTo(), casted.getReplyTo());
+        assertEquals(OBJECT.getPersistenceProtocol(), casted.getPersistenceProtocol());
 
-        Assert.assertNotNull(casted.getModifications());
-        Assert.assertEquals(1, casted.getModifications().size());
+        assertNotNull(casted.getModifications());
+        assertEquals(1, casted.getModifications().size());
         final TransactionModification modification = casted.getModifications().get(0);
-        Assert.assertEquals(YangInstanceIdentifier.empty(), modification.getPath());
-        Assert.assertEquals(TYPE_WRITE, modification.getType());
+        assertEquals(YangInstanceIdentifier.empty(), modification.getPath());
+        assertEquals(TYPE_WRITE, modification.getType());
     }
 }
index 0a56e822a332fc9aa3adf241f5edef7902f8449a..51257462b636c0aaf5397104d79dd27380d452cf 100644 (file)
@@ -7,8 +7,11 @@
  */
 package org.opendaylight.controller.cluster.access.commands;
 
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
 import java.util.Optional;
-import org.junit.Assert;
 import org.junit.Test;
 import org.opendaylight.controller.cluster.access.ABIVersion;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
@@ -24,19 +27,19 @@ public class ReadTransactionSuccessNoDataTest extends AbstractTransactionSuccess
 
     @Test
     public void getDataTest() {
-        final Optional<NormalizedNode<?, ?>> result = OBJECT.getData();
-        Assert.assertFalse(result.isPresent());
+        final Optional<NormalizedNode> result = OBJECT.getData();
+        assertFalse(result.isPresent());
     }
 
     @Test
     public void cloneAsVersionTest() {
         final ReadTransactionSuccess clone = OBJECT.cloneAsVersion(ABIVersion.BORON);
-        Assert.assertEquals(OBJECT, clone);
+        assertEquals(OBJECT, clone);
     }
 
     @Override
-    protected void doAdditionalAssertions(Object deserialize) {
-        Assert.assertTrue(deserialize instanceof ReadTransactionSuccess);
-        Assert.assertEquals(OBJECT.getData(), ((ReadTransactionSuccess) deserialize).getData());
+    protected void doAdditionalAssertions(final Object deserialize) {
+        assertTrue(deserialize instanceof ReadTransactionSuccess);
+        assertEquals(OBJECT.getData(), ((ReadTransactionSuccess) deserialize).getData());
     }
 }
index a50dc5d50cd7c19c999fea7a920ea0abaf879375..4bda8c8016da4243e8d6f9a7c99d0cbc21f40817 100644 (file)
@@ -7,18 +7,21 @@
  */
 package org.opendaylight.controller.cluster.access.commands;
 
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
 import java.util.Optional;
-import org.junit.Assert;
 import org.junit.Test;
 import org.opendaylight.controller.cluster.access.ABIVersion;
 import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
+import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
+import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 import org.opendaylight.yangtools.yang.data.impl.schema.Builders;
 
 public class ReadTransactionSuccessTest extends AbstractTransactionSuccessTest<ReadTransactionSuccess> {
-    private static final NormalizedNode<?, ?> NODE = Builders.containerBuilder().withNodeIdentifier(
-            YangInstanceIdentifier.NodeIdentifier.create(QName.create("namespace", "localName"))).build();
+    private static final ContainerNode NODE = Builders.containerBuilder().withNodeIdentifier(
+            NodeIdentifier.create(QName.create("namespace", "localName"))).build();
 
     private static final ReadTransactionSuccess OBJECT = new ReadTransactionSuccess(
             TRANSACTION_IDENTIFIER, 0, Optional.of(NODE));
@@ -30,20 +33,20 @@ public class ReadTransactionSuccessTest extends AbstractTransactionSuccessTest<R
 
     @Test
     public void getDataTest() {
-        final Optional<NormalizedNode<?, ?>> result = OBJECT.getData();
-        Assert.assertTrue(result.isPresent());
-        Assert.assertEquals(NODE.getValue(), result.get().getValue());
+        final Optional<NormalizedNode> result = OBJECT.getData();
+        assertTrue(result.isPresent());
+        assertEquals(NODE.body(), result.get().body());
     }
 
     @Test
     public void cloneAsVersionTest() {
         final ReadTransactionSuccess clone = OBJECT.cloneAsVersion(ABIVersion.BORON);
-        Assert.assertEquals(OBJECT, clone);
+        assertEquals(OBJECT, clone);
     }
 
     @Override
-    protected void doAdditionalAssertions(Object deserialize) {
-        Assert.assertTrue(deserialize instanceof ReadTransactionSuccess);
-        Assert.assertEquals(OBJECT.getData(), ((ReadTransactionSuccess) deserialize).getData());
+    protected void doAdditionalAssertions(final Object deserialize) {
+        assertTrue(deserialize instanceof ReadTransactionSuccess);
+        assertEquals(OBJECT.getData(), ((ReadTransactionSuccess) deserialize).getData());
     }
 }
index 6a5374b5155d53710c5236670af35e2fd27b63ad..75a993d3800e8d4c1ba877b3eba57da68b90e60d 100644 (file)
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>bundle-parent</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
@@ -26,7 +26,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
       <dependency>
         <groupId>org.opendaylight.mdsal</groupId>
         <artifactId>mdsal-artifacts</artifactId>
-        <version>7.0.6</version>
+        <version>8.0.0-SNAPSHOT</version>
         <type>pom</type>
         <scope>import</scope>
       </dependency>
@@ -93,13 +93,11 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     <dependency>
         <groupId>org.apache.geronimo.specs</groupId>
         <artifactId>geronimo-atinject_1.0_spec</artifactId>
-        <version>1.0</version>
     </dependency>
 
     <dependency>
         <groupId>org.apache.karaf.features</groupId>
         <artifactId>org.apache.karaf.features.core</artifactId>
-        <version>${karaf.version}</version>
         <scope>compile</scope>
     </dependency>
     <dependency>
index 0d509bd6a0a4a333c8ffa54d6a094161a82f271e..46e5e53fb4d887d4d5e9dc6fc78e6b2787b5b4d3 100644 (file)
@@ -13,7 +13,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>bundle-parent</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
index 830d01a0493a1fe769fd28afb50abddca41a7077..0bf9d7cf71e8da13aab64f50ede4d4305db77f60 100644 (file)
@@ -11,7 +11,7 @@
   <parent>
     <groupId>org.opendaylight.mdsal</groupId>
     <artifactId>binding-parent</artifactId>
-    <version>7.0.6</version>
+    <version>8.0.0-SNAPSHOT</version>
     <relativePath/>
   </parent>
 
index 0f3ad47769af0ebfe2ed07632f4653c5dfd46591..23c93cfa5c36ac2523da824c88f37ef51867152b 100644 (file)
@@ -5,7 +5,7 @@
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>odlparent-lite</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
index 3bedc591134930fb4459e6e66068b8cef9757aae..00f6a04346fddb28f525a0dbb9113652ad71aae0 100644 (file)
@@ -213,7 +213,7 @@ public abstract class RaftActor extends AbstractUntypedPersistentActor {
      * Handles a message.
      *
      * @deprecated This method is not final for testing purposes. DO NOT OVERRIDE IT, override
-     * {@link #handleNonRaftCommand(Object)} instead.
+     *             {@link #handleNonRaftCommand(Object)} instead.
      */
     @Deprecated
     @Override
index 1362db752e123014c7a6e832262f7bda4a6f00ac..f90a428c033c6b2e96c4f195a3930c463273b63f 100644 (file)
@@ -26,18 +26,13 @@ import akka.actor.ActorRef;
 import akka.actor.PoisonPill;
 import akka.actor.Status.Success;
 import akka.cluster.Cluster;
-import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.Iterables;
 import com.google.common.collect.Lists;
-import com.google.common.collect.Sets;
 import java.io.File;
 import java.io.FileInputStream;
-import java.net.URI;
 import java.util.AbstractMap.SimpleEntry;
 import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
@@ -95,6 +90,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controll
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.cluster.admin.rev151013.shard.result.output.ShardResultKey;
 import org.opendaylight.yangtools.yang.common.RpcError;
 import org.opendaylight.yangtools.yang.common.RpcResult;
+import org.opendaylight.yangtools.yang.common.XMLNamespace;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 
 /**
@@ -173,7 +169,7 @@ public class ClusterAdminRpcServiceTest {
             shardNames.add(s.getName());
         }
 
-        assertEquals("DatastoreSnapshot shard names", Sets.newHashSet(expShardNames), shardNames);
+        assertEquals("DatastoreSnapshot shard names", Set.of(expShardNames), shardNames);
     }
 
     @Test
@@ -254,7 +250,7 @@ public class ClusterAdminRpcServiceTest {
         verifyRaftPeersPresent(newReplicaNode2.operDataStore(), "cars", "member-1", "member-3");
 
         // Write data to member-2's config datastore and read/verify via member-3
-        final NormalizedNode<?, ?> configCarsNode = writeCarsNodeAndVerify(newReplicaNode2.configDataStore(),
+        final NormalizedNode configCarsNode = writeCarsNodeAndVerify(newReplicaNode2.configDataStore(),
                 newReplicaNode3.configDataStore());
 
         // Write data to member-3's oper datastore and read/verify via member-2
@@ -311,10 +307,10 @@ public class ClusterAdminRpcServiceTest {
         verifyFailedRpcResult(rpcResult);
     }
 
-    private static NormalizedNode<?, ?> writeCarsNodeAndVerify(final AbstractDataStore writeToStore,
+    private static NormalizedNode writeCarsNodeAndVerify(final AbstractDataStore writeToStore,
             final AbstractDataStore readFromStore) throws Exception {
         DOMStoreWriteTransaction writeTx = writeToStore.newWriteOnlyTransaction();
-        NormalizedNode<?, ?> carsNode = CarsModel.create();
+        NormalizedNode carsNode = CarsModel.create();
         writeTx.write(CarsModel.BASE_PATH, carsNode);
 
         DOMStoreThreePhaseCommitCohort cohort = writeTx.ready();
@@ -328,8 +324,8 @@ public class ClusterAdminRpcServiceTest {
     }
 
     private static void readCarsNodeAndVerify(final AbstractDataStore readFromStore,
-            final NormalizedNode<?, ?> expCarsNode) throws Exception {
-        Optional<NormalizedNode<?, ?>> optional = readFromStore.newReadOnlyTransaction().read(CarsModel.BASE_PATH)
+            final NormalizedNode expCarsNode) throws Exception {
+        Optional<NormalizedNode> optional = readFromStore.newReadOnlyTransaction().read(CarsModel.BASE_PATH)
                 .get(15, TimeUnit.SECONDS);
         assertTrue("isPresent", optional.isPresent());
         assertEquals("Data node", expCarsNode, optional.get());
@@ -501,9 +497,8 @@ public class ClusterAdminRpcServiceTest {
         MemberNode leaderNode1 = MemberNode.builder(memberNodes).akkaConfig("Member1").testName(name)
                 .moduleShardsConfig(moduleShardsConfig).waitForShardLeader("cars", "people").build();
 
-        ModuleShardConfiguration petsModuleConfig = new ModuleShardConfiguration(URI.create("pets-ns"), "pets-module",
-                                                                                 "pets", null,
-                                                                                 Collections.singletonList(MEMBER_1));
+        ModuleShardConfiguration petsModuleConfig = new ModuleShardConfiguration(
+            XMLNamespace.of("pets-ns"), "pets-module", "pets", null, List.of(MEMBER_1));
         leaderNode1.configDataStore().getActorUtils().getShardManager().tell(
                 new CreateShard(petsModuleConfig, Shard.builder(), null), leaderNode1.kit().getRef());
         leaderNode1.kit().expectMsgClass(Success.class);
@@ -520,9 +515,8 @@ public class ClusterAdminRpcServiceTest {
         newReplicaNode2.kit().expectMsgClass(Success.class);
 
         newReplicaNode2.operDataStore().getActorUtils().getShardManager().tell(
-                new CreateShard(new ModuleShardConfiguration(URI.create("no-leader-ns"), "no-leader-module",
-                                                             "no-leader", null,
-                                                             Collections.singletonList(MEMBER_1)),
+                new CreateShard(new ModuleShardConfiguration(XMLNamespace.of("no-leader-ns"), "no-leader-module",
+                                                             "no-leader", null, List.of(MEMBER_1)),
                                 Shard.builder(), null),
                                 newReplicaNode2.kit().getRef());
         newReplicaNode2.kit().expectMsgClass(Success.class);
@@ -567,8 +561,8 @@ public class ClusterAdminRpcServiceTest {
         verifyRaftPeersPresent(replicaNode2.configDataStore(), "cars", "member-1", "member-3");
         verifyRaftPeersPresent(replicaNode3.configDataStore(), "cars", "member-1", "member-2");
 
-        ModuleShardConfiguration petsModuleConfig = new ModuleShardConfiguration(URI.create("pets-ns"), "pets-module",
-                "pets", null, Arrays.asList(MEMBER_1, MEMBER_2, MEMBER_3));
+        ModuleShardConfiguration petsModuleConfig = new ModuleShardConfiguration(XMLNamespace.of("pets-ns"),
+                "pets-module", "pets", null, List.of(MEMBER_1, MEMBER_2, MEMBER_3));
         leaderNode1.configDataStore().getActorUtils().getShardManager().tell(
                 new CreateShard(petsModuleConfig, Shard.builder(), null), leaderNode1.kit().getRef());
         leaderNode1.kit().expectMsgClass(Success.class);
@@ -637,7 +631,7 @@ public class ClusterAdminRpcServiceTest {
         RpcResult<ChangeMemberVotingStatesForShardOutput> rpcResult = service3
                 .changeMemberVotingStatesForShard(new ChangeMemberVotingStatesForShardInputBuilder()
                         .setShardName("cars").setDataStoreType(DataStoreType.Config)
-                        .setMemberVotingState(ImmutableList.of(
+                        .setMemberVotingState(List.of(
                                 new MemberVotingStateBuilder().setMemberName("member-2").setVoting(FALSE).build(),
                                 new MemberVotingStateBuilder().setMemberName("member-3").setVoting(FALSE).build()))
                         .build())
@@ -671,8 +665,10 @@ public class ClusterAdminRpcServiceTest {
         RpcResult<ChangeMemberVotingStatesForShardOutput> rpcResult = service
                 .changeMemberVotingStatesForShard(new ChangeMemberVotingStatesForShardInputBuilder()
                         .setShardName("cars").setDataStoreType(DataStoreType.Config)
-                        .setMemberVotingState(ImmutableList
-                                .of(new MemberVotingStateBuilder().setMemberName("member-1").setVoting(FALSE).build()))
+                        .setMemberVotingState(List.of(new MemberVotingStateBuilder()
+                            .setMemberName("member-1")
+                            .setVoting(FALSE)
+                            .build()))
                         .build())
                 .get(10, TimeUnit.SECONDS);
         verifyFailedRpcResult(rpcResult);
@@ -709,7 +705,7 @@ public class ClusterAdminRpcServiceTest {
                 replicaNode3.operDataStore(), null);
 
         RpcResult<ChangeMemberVotingStatesForAllShardsOutput> rpcResult = service3.changeMemberVotingStatesForAllShards(
-                new ChangeMemberVotingStatesForAllShardsInputBuilder().setMemberVotingState(ImmutableList.of(
+                new ChangeMemberVotingStatesForAllShardsInputBuilder().setMemberVotingState(List.of(
                         new MemberVotingStateBuilder().setMemberName("member-2").setVoting(FALSE).build(),
                         new MemberVotingStateBuilder().setMemberName("member-3").setVoting(FALSE).build())).build())
                 .get(10, TimeUnit.SECONDS);
@@ -730,7 +726,7 @@ public class ClusterAdminRpcServiceTest {
     public void testFlipMemberVotingStates() throws Exception {
         String name = "testFlipMemberVotingStates";
 
-        ServerConfigurationPayload persistedServerConfig = new ServerConfigurationPayload(Arrays.asList(
+        ServerConfigurationPayload persistedServerConfig = new ServerConfigurationPayload(List.of(
                 new ServerInfo("member-1", true), new ServerInfo("member-2", true),
                 new ServerInfo("member-3", false)));
 
@@ -819,7 +815,7 @@ public class ClusterAdminRpcServiceTest {
 
         // Members 1, 2, and 3 are initially started up as non-voting. Members 4, 5, and 6 are initially
         // non-voting and simulated as down by not starting them up.
-        ServerConfigurationPayload persistedServerConfig = new ServerConfigurationPayload(Arrays.asList(
+        ServerConfigurationPayload persistedServerConfig = new ServerConfigurationPayload(List.of(
                 new ServerInfo("member-1", false), new ServerInfo("member-2", false),
                 new ServerInfo("member-3", false), new ServerInfo("member-4", true),
                 new ServerInfo("member-5", true), new ServerInfo("member-6", true)));
@@ -891,7 +887,7 @@ public class ClusterAdminRpcServiceTest {
         String name = "testFlipMemberVotingStatesWithVotingMembersDown";
 
         // Members 4, 5, and 6 are initially non-voting and simulated as down by not starting them up.
-        ServerConfigurationPayload persistedServerConfig = new ServerConfigurationPayload(Arrays.asList(
+        ServerConfigurationPayload persistedServerConfig = new ServerConfigurationPayload(List.of(
                 new ServerInfo("member-1", true), new ServerInfo("member-2", true),
                 new ServerInfo("member-3", true), new ServerInfo("member-4", false),
                 new ServerInfo("member-5", false), new ServerInfo("member-6", false)));
index 860af701c30bb711b1547e844f319a8f67b18acd..24f53d1aca48f17c7d53f9bb46032e7dd882e9f9 100644 (file)
       <groupId>org.opendaylight.yangtools</groupId>
       <artifactId>yang-data-codec-binfmt</artifactId>
     </dependency>
+    <dependency>
+      <groupId>org.opendaylight.yangtools</groupId>
+      <artifactId>yang-repo-spi</artifactId>
+    </dependency>
 
     <!-- Compression -->
     <dependency>
index 0bf1a2fe01fbba2d693832a0a1a66d2e8042da02..6e567fa245bf7838bf095ac30288f909e62971a5 100644 (file)
@@ -18,14 +18,13 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodeContainer;
  * NormalizedNodeNavigator walks a {@link NormalizedNodeVisitor} through the NormalizedNode.
  */
 public class NormalizedNodeNavigator {
-
     private final NormalizedNodeVisitor visitor;
 
     public NormalizedNodeNavigator(final NormalizedNodeVisitor visitor) {
         this.visitor = requireNonNull(visitor, "visitor should not be null");
     }
 
-    public void navigate(String parentPath, final NormalizedNode<?, ?> normalizedNode) {
+    public void navigate(String parentPath, final NormalizedNode normalizedNode) {
         if (parentPath == null) {
             parentPath = "";
         }
@@ -33,14 +32,14 @@ public class NormalizedNodeNavigator {
     }
 
     private void navigateDataContainerNode(final int level, final String parentPath,
-            final DataContainerNode<?> dataContainerNode) {
+            final DataContainerNode dataContainerNode) {
         visitor.visitNode(level, parentPath, dataContainerNode);
 
         String newParentPath = parentPath + "/" + dataContainerNode.getIdentifier().toString();
 
-        for (NormalizedNode<?, ?> node : dataContainerNode.getValue()) {
+        for (NormalizedNode node : dataContainerNode.body()) {
             if (node instanceof MixinNode && node instanceof NormalizedNodeContainer) {
-                navigateNormalizedNodeContainerMixin(level, newParentPath, (NormalizedNodeContainer<?, ?, ?>) node);
+                navigateNormalizedNodeContainerMixin(level, newParentPath, (NormalizedNodeContainer<?>) node);
             } else {
                 navigateNormalizedNode(level, newParentPath, node);
             }
@@ -49,15 +48,15 @@ public class NormalizedNodeNavigator {
     }
 
     private void navigateNormalizedNodeContainerMixin(final int level, final String parentPath,
-            final NormalizedNodeContainer<?, ?, ?> node) {
+            final NormalizedNodeContainer<?> node) {
         visitor.visitNode(level, parentPath, node);
 
         String newParentPath = parentPath + "/" + node.getIdentifier().toString();
 
-        for (NormalizedNode<?, ?> normalizedNode : node.getValue()) {
+        for (NormalizedNode normalizedNode : node.body()) {
             if (normalizedNode instanceof MixinNode && normalizedNode instanceof NormalizedNodeContainer) {
                 navigateNormalizedNodeContainerMixin(level + 1, newParentPath,
-                        (NormalizedNodeContainer<?, ?, ?>) normalizedNode);
+                        (NormalizedNodeContainer<?>) normalizedNode);
             } else {
                 navigateNormalizedNode(level, newParentPath, normalizedNode);
             }
@@ -65,13 +64,9 @@ public class NormalizedNodeNavigator {
 
     }
 
-    private void navigateNormalizedNode(final int level, final String parentPath,
-            final NormalizedNode<?, ?> normalizedNode) {
+    private void navigateNormalizedNode(final int level, final String parentPath, final NormalizedNode normalizedNode) {
         if (normalizedNode instanceof DataContainerNode) {
-
-            final DataContainerNode<?> dataContainerNode = (DataContainerNode<?>) normalizedNode;
-
-            navigateDataContainerNode(level + 1, parentPath, dataContainerNode);
+            navigateDataContainerNode(level + 1, parentPath, (DataContainerNode) normalizedNode);
         } else {
             visitor.visitNode(level + 1, parentPath, normalizedNode);
         }
index c04f0ced5f2e44b007d9c59743cab1c25318ae7b..d455c41754001b4c88d7ce47adec7741bbde952f 100644 (file)
@@ -5,11 +5,10 @@
  * 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.datastore.node.utils;
 
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 
 public interface NormalizedNodeVisitor {
-    void visitNode(int level, String parentPath, NormalizedNode<?, ?> normalizedNode);
+    void visitNode(int level, String parentPath, NormalizedNode normalizedNode);
 }
index fcafccd8177a63ae2ff7af7850ca370edd0a9e3b..a2c456d17a65efb3fa5c2007379f75a1219dcc40 100644 (file)
@@ -33,24 +33,23 @@ public final class SerializationUtils {
 
     @FunctionalInterface
     public interface Applier<T> {
-        void apply(T instance, YangInstanceIdentifier path, NormalizedNode<?, ?> node);
+        void apply(T instance, YangInstanceIdentifier path, NormalizedNode node);
     }
 
-    public static Optional<NormalizedNode<?, ?>> readNormalizedNode(final DataInput in) throws IOException {
+    public static Optional<NormalizedNode> readNormalizedNode(final DataInput in) throws IOException {
         if (!in.readBoolean()) {
             return Optional.empty();
         }
         return Optional.of(NormalizedNodeDataInput.newDataInput(in).readNormalizedNode());
     }
 
-    public static void writeNormalizedNode(final DataOutput out, final @Nullable NormalizedNode<?, ?> node)
+    public static void writeNormalizedNode(final DataOutput out, final @Nullable NormalizedNode node)
             throws IOException {
         writeNormalizedNode(out, MAGNESIUM, node);
     }
 
-    public static void writeNormalizedNode(final DataOutput out,
-            final org.opendaylight.yangtools.yang.data.codec.binfmt.NormalizedNodeStreamVersion version,
-            final @Nullable NormalizedNode<?, ?> node) throws IOException {
+    public static void writeNormalizedNode(final DataOutput out, final NormalizedNodeStreamVersion version,
+            final @Nullable NormalizedNode node) throws IOException {
         if (node != null) {
             out.writeBoolean(true);
 
@@ -81,13 +80,13 @@ public final class SerializationUtils {
     public static <T> void readNodeAndPath(final DataInput in, final T instance, final Applier<T> applier)
             throws IOException {
         final NormalizedNodeDataInput stream = NormalizedNodeDataInput.newDataInput(in);
-        NormalizedNode<?, ?> node = stream.readNormalizedNode();
+        NormalizedNode node = stream.readNormalizedNode();
         YangInstanceIdentifier path = stream.readYangInstanceIdentifier();
         applier.apply(instance, path, node);
     }
 
     public static void writeNodeAndPath(final DataOutput out, final NormalizedNodeStreamVersion version,
-            final YangInstanceIdentifier path, final NormalizedNode<?, ?> node) throws IOException {
+            final YangInstanceIdentifier path, final NormalizedNode node) throws IOException {
         try (NormalizedNodeDataOutput stream = version.newDataOutput(out)) {
             stream.writeNormalizedNode(node);
             stream.writeYangInstanceIdentifier(path);
@@ -95,7 +94,7 @@ public final class SerializationUtils {
     }
 
     public static void writeNodeAndPath(final DataOutput out, final YangInstanceIdentifier path,
-            final NormalizedNode<?, ?> node) throws IOException {
+            final NormalizedNode node) throws IOException {
         writeNodeAndPath(out, MAGNESIUM, path, node);
     }
 
@@ -103,13 +102,13 @@ public final class SerializationUtils {
             throws IOException {
         final NormalizedNodeDataInput stream = NormalizedNodeDataInput.newDataInput(in);
         YangInstanceIdentifier path = stream.readYangInstanceIdentifier();
-        NormalizedNode<?, ?> node = stream.readNormalizedNode();
+        NormalizedNode node = stream.readNormalizedNode();
         applier.apply(instance, path, node);
     }
 
     public static void writePathAndNode(final DataOutput out,
             final org.opendaylight.yangtools.yang.data.codec.binfmt.NormalizedNodeStreamVersion version,
-            final YangInstanceIdentifier path, final NormalizedNode<?, ?> node) throws IOException {
+            final YangInstanceIdentifier path, final NormalizedNode node) throws IOException {
         try (NormalizedNodeDataOutput stream = version.newDataOutput(out)) {
             stream.writeYangInstanceIdentifier(path);
             stream.writeNormalizedNode(node);
@@ -117,7 +116,7 @@ public final class SerializationUtils {
     }
 
     public static void writePathAndNode(final DataOutput out, final YangInstanceIdentifier path,
-            final NormalizedNode<?, ?> node) throws IOException {
+            final NormalizedNode node) throws IOException {
         writePathAndNode(out, MAGNESIUM, path, node);
     }
 }
index 8999034504c0115ee41e2c5f43d3d3347bcff7d9..13500c17c0fe964d75870c1c2783a6f6af91f67e 100644 (file)
@@ -64,7 +64,7 @@ abstract class AbstractNormalizedNodePruner implements NormalizedNodeStreamWrite
     private final DataSchemaContextTree tree;
 
     private DataSchemaContextNode<?> nodePathSchemaNode;
-    private NormalizedNode<?, ?> normalizedNode;
+    private NormalizedNode normalizedNode;
     private State state = State.UNITIALIZED;
     private int unknown;
 
@@ -114,12 +114,6 @@ abstract class AbstractNormalizedNodePruner implements NormalizedNodeStreamWrite
         enter(ReusableImmutableNormalizedNodeStreamWriter::startContainerNode, name, childSizeHint);
     }
 
-    @Override
-    public final void startYangModeledAnyXmlNode(final NodeIdentifier nodeIdentifier, final int count) {
-        // FIXME: implement this
-        throw new UnsupportedOperationException("Not implemented yet");
-    }
-
     @Override
     public final void startUnkeyedList(final NodeIdentifier name, final int childSizeHint) throws IOException {
         enter(ReusableImmutableNormalizedNodeStreamWriter::startUnkeyedList, name, childSizeHint);
@@ -235,7 +229,7 @@ abstract class AbstractNormalizedNodePruner implements NormalizedNodeStreamWrite
      * @return Resulting node for the path, if it was not pruned
      * @throws IllegalStateException if this pruner has not been closed
      */
-    public final Optional<NormalizedNode<?, ?>> getResult() {
+    public final Optional<NormalizedNode> getResult() {
         checkState(state == State.CLOSED, "Cannot get result in state %s", state);
         return Optional.ofNullable(normalizedNode);
     }
index 1f5259eb827f4d99decf50b55112a8efafff608c..35ab00f4f5b12ebbd63929dce66eff4918472054 100644 (file)
@@ -71,7 +71,7 @@ public abstract class AbstractDataTreeModificationCursor implements DataTreeModi
     }
 
     @Override
-    public final Optional<NormalizedNode<?, ?>> readNode(final PathArgument child) {
+    public final Optional<NormalizedNode> readNode(final PathArgument child) {
         throw new UnsupportedOperationException("Not implemented");
     }
 
index 8215e23ff371d290846a3e2d75528847219c2e0d..73cdece20fc25da023df2250a795adb01b4a6f67 100644 (file)
@@ -24,7 +24,7 @@ import java.util.ArrayDeque;
 import java.util.Arrays;
 import java.util.Deque;
 import java.util.Iterator;
-import org.opendaylight.yangtools.concepts.Variant;
+import org.opendaylight.yangtools.concepts.Either;
 
 /**
  * An {@link OutputStream} implementation which collects data is a series of {@code byte[]} chunks, each of which has
@@ -124,10 +124,10 @@ public final class ChunkedOutputStream extends OutputStream {
         return size;
     }
 
-    public Variant<byte[], ChunkedByteArray> toVariant() {
+    public Either<byte[], ChunkedByteArray> toVariant() {
         checkClosed();
-        return result instanceof byte[] ? Variant.ofFirst((byte[]) result)
-                : Variant.ofSecond(new ChunkedByteArray(size, (ImmutableList<byte[]>) result));
+        return result instanceof byte[] ? Either.ofFirst((byte[]) result)
+                : Either.ofSecond(new ChunkedByteArray(size, (ImmutableList<byte[]>) result));
     }
 
     @VisibleForTesting
index 88e58421c1d590681e72c4fc6ef8252c33fe630a..4a4416d57655ce30d2cf0c3d2699642b383464ea 100644 (file)
@@ -5,7 +5,6 @@
  * 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 akka.dispatch.OnComplete;
index 04da2a6956fb1a3837b2ad7f821448c2ffa3ffa8..9af555d390f5ba36db9fa3e96f2ab001e879f6f2 100644 (file)
@@ -39,9 +39,9 @@ import org.opendaylight.yangtools.yang.data.api.schema.LeafSetNode;
 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.OrderedMapNode;
 import org.opendaylight.yangtools.yang.data.api.schema.UnkeyedListEntryNode;
 import org.opendaylight.yangtools.yang.data.api.schema.UnkeyedListNode;
+import org.opendaylight.yangtools.yang.data.api.schema.UserMapNode;
 import org.opendaylight.yangtools.yang.data.impl.schema.Builders;
 import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
 import org.w3c.dom.Document;
@@ -52,7 +52,7 @@ public class SerializationUtilsTest {
 
     @Test
     public void testSerializeDeserializeNodes() throws IOException {
-        final NormalizedNode<?, ?> normalizedNode = createNormalizedNode();
+        final NormalizedNode normalizedNode = createNormalizedNode();
         final byte[] bytes = serializeNormalizedNode(normalizedNode);
         assertEquals(10564, bytes.length);
         assertEquals(normalizedNode, deserializeNormalizedNode(bytes));
@@ -64,14 +64,14 @@ public class SerializationUtilsTest {
                 new ByteArrayInputStream("<xml><data/></xml>".getBytes(Charset.defaultCharset()));
         final Document parse = UntrustedXML.newDocumentBuilder().parse(is);
         final DOMSourceAnyxmlNode anyXmlNode = Builders.anyXmlBuilder()
-                .withNodeIdentifier(id("anyXmlNode"))
+                  .withNodeIdentifier(id("anyXmlNode"))
                 .withValue(new DOMSource(parse))
                 .build();
         final byte[] bytes = serializeNormalizedNode(anyXmlNode);
         assertEquals(113, bytes.length);
-        final NormalizedNode<?, ?> deserialized = deserializeNormalizedNode(bytes);
-        final DOMSource value = (DOMSource) deserialized.getValue();
-        final Diff diff = XMLUnit.compareXML((Document) anyXmlNode.getValue().getNode(),
+        final NormalizedNode deserialized = deserializeNormalizedNode(bytes);
+        final DOMSource value = (DOMSource) deserialized.body();
+        final Diff diff = XMLUnit.compareXML((Document) anyXmlNode.body().getNode(),
                 value.getNode().getOwnerDocument());
         assertTrue(diff.toString(), diff.similar());
     }
@@ -100,7 +100,7 @@ public class SerializationUtilsTest {
     public void testSerializeDeserializePathAndNode() throws IOException {
         final ByteArrayOutputStream bos = new ByteArrayOutputStream();
         final DataOutput out = new DataOutputStream(bos);
-        final NormalizedNode<?, ?> node = createNormalizedNode();
+        final NormalizedNode node = createNormalizedNode();
         final YangInstanceIdentifier path = YangInstanceIdentifier.create(id("container1"));
         SerializationUtils.writeNodeAndPath(out, path, node);
 
@@ -136,17 +136,17 @@ public class SerializationUtilsTest {
         assertEquals(expected, read);
     }
 
-    private static NormalizedNode<?, ?> deserializeNormalizedNode(final byte[] bytes) throws IOException {
+    private static NormalizedNode deserializeNormalizedNode(final byte[] bytes) throws IOException {
         return SerializationUtils.readNormalizedNode(new DataInputStream(new ByteArrayInputStream(bytes))).get();
     }
 
-    private static byte[] serializeNormalizedNode(final NormalizedNode<?, ?> node) throws IOException {
+    private static byte[] serializeNormalizedNode(final NormalizedNode node) throws IOException {
         ByteArrayOutputStream bos = new ByteArrayOutputStream();
         SerializationUtils.writeNormalizedNode(new DataOutputStream(bos), node);
         return bos.toByteArray();
     }
 
-    private static NormalizedNode<?, ?> createNormalizedNode() {
+    private static NormalizedNode createNormalizedNode() {
         final LeafSetNode<Object> leafSetNode = Builders.leafSetBuilder()
                 .withNodeIdentifier(id("leafSetNode"))
                 .withChild(createLeafSetEntry("leafSetNode", "leafSetValue1"))
@@ -179,7 +179,7 @@ public class SerializationUtilsTest {
                 .withChild(entry1)
                 .withChild(entry2)
                 .build();
-        final OrderedMapNode orderedMapNode = Builders.orderedMapBuilder()
+        final UserMapNode orderedMapNode = Builders.orderedMapBuilder()
                 .withNodeIdentifier(id("orderedMapNode"))
                 .withChild(entry2)
                 .withChild(entry1)
index 41e494c56d6ee9d460c416bde4318b700a43478d..8001ebd05158528cbc958659dec1e9a0f9bdf9fd 100644 (file)
@@ -71,11 +71,11 @@ public class NormalizedNodePrunerTest {
 
         NormalizedNodeWriter normalizedNodeWriter = NormalizedNodeWriter.forStreamWriter(pruner);
 
-        NormalizedNode<?, ?> expected = createTestContainer();
+        NormalizedNode expected = createTestContainer();
 
         normalizedNodeWriter.write(expected);
 
-        NormalizedNode<?, ?> actual = pruner.getResult().orElseThrow();
+        NormalizedNode actual = pruner.getResult().orElseThrow();
 
         assertEquals(expected, actual);
 
@@ -87,11 +87,11 @@ public class NormalizedNodePrunerTest {
 
         NormalizedNodeWriter normalizedNodeWriter = NormalizedNodeWriter.forStreamWriter(pruner);
 
-        NormalizedNode<?, ?> expected = createTestContainer();
+        NormalizedNode expected = createTestContainer();
 
         normalizedNodeWriter.write(expected);
 
-        NormalizedNode<?, ?> actual = pruner.getResult().orElseThrow();
+        NormalizedNode actual = pruner.getResult().orElseThrow();
 
         assertEquals(expected, actual);
 
@@ -106,11 +106,11 @@ public class NormalizedNodePrunerTest {
 
         NormalizedNodeWriter normalizedNodeWriter = NormalizedNodeWriter.forStreamWriter(pruner);
 
-        NormalizedNode<?, ?> expected = createTestContainer();
+        NormalizedNode expected = createTestContainer();
 
         normalizedNodeWriter.write(expected);
 
-        NormalizedNode<?, ?> actual = pruner.getResult().orElseThrow();
+        NormalizedNode actual = pruner.getResult().orElseThrow();
 
         assertNotEquals(expected, actual);
 
@@ -127,7 +127,7 @@ public class NormalizedNodePrunerTest {
 
         NormalizedNodeWriter normalizedNodeWriter = NormalizedNodeWriter.forStreamWriter(pruner);
 
-        NormalizedNode<?, ?> expected = createTestContainer();
+        NormalizedNode expected = createTestContainer();
 
         normalizedNodeWriter.write(expected);
 
@@ -139,7 +139,7 @@ public class NormalizedNodePrunerTest {
 
     }
 
-    private static int countNodes(final NormalizedNode<?,?> normalizedNode, final String namespaceFilter) {
+    private static int countNodes(final NormalizedNode normalizedNode, final String namespaceFilter) {
         if (normalizedNode == null) {
             return 0;
         }
@@ -158,7 +158,7 @@ public class NormalizedNodePrunerTest {
     @Test
     public void testLeafNodeNotPrunedWhenHasNoParent() throws IOException {
         AbstractNormalizedNodePruner pruner = prunerFullSchema(TestModel.TEST_PATH.node(TestModel.DESC_QNAME));
-        NormalizedNode<?, ?> input = Builders.leafBuilder().withNodeIdentifier(
+        NormalizedNode input = Builders.leafBuilder().withNodeIdentifier(
                 new NodeIdentifier(TestModel.DESC_QNAME)).withValue("test").build();
         NormalizedNodeWriter.forStreamWriter(pruner).write(input);
 
@@ -173,17 +173,17 @@ public class NormalizedNodePrunerTest {
                         .node(TestModel.AUGMENTED_LIST_QNAME).node(augId).build());
         LeafNode<Object> child = Builders.leafBuilder().withNodeIdentifier(
                 new NodeIdentifier(TestModel.INVALID_QNAME)).withValue("test").build();
-        NormalizedNode<?, ?> input = Builders.augmentationBuilder().withNodeIdentifier(augId).withChild(child).build();
+        NormalizedNode input = Builders.augmentationBuilder().withNodeIdentifier(augId).withChild(child).build();
         NormalizedNodeWriter.forStreamWriter(pruner).write(input);
 
-        NormalizedNode<?, ?> actual = pruner.getResult().orElseThrow();
+        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(
+        NormalizedNode input = Builders.leafBuilder().withNodeIdentifier(
                 new NodeIdentifier(TestModel.INVALID_QNAME)).withValue("test").build();
         NormalizedNodeWriter.forStreamWriter(pruner).write(input);
 
@@ -193,11 +193,11 @@ 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(
+        NormalizedNode input = Builders.leafSetEntryBuilder().withValue("puma").withNodeIdentifier(
                 new NodeWithValue<>(TestModel.SHOE_QNAME, "puma")).build();
         NormalizedNodeWriter.forStreamWriter(pruner).write(input);
 
-        NormalizedNode<?, ?> actual = pruner.getResult().orElseThrow();
+        NormalizedNode actual = pruner.getResult().orElseThrow();
         assertEquals("normalizedNode", input, actual);
     }
 
@@ -206,18 +206,18 @@ public class NormalizedNodePrunerTest {
         AbstractNormalizedNodePruner pruner = prunerFullSchema(TestModel.TEST_PATH.node(TestModel.SHOE_QNAME));
         LeafSetEntryNode<Object> child = Builders.leafSetEntryBuilder().withValue("puma").withNodeIdentifier(
                 new NodeWithValue<>(TestModel.SHOE_QNAME, "puma")).build();
-        NormalizedNode<?, ?> input = Builders.leafSetBuilder().withNodeIdentifier(
+        NormalizedNode input = Builders.leafSetBuilder().withNodeIdentifier(
                 new NodeIdentifier(TestModel.SHOE_QNAME)).withChild(child).build();
         NormalizedNodeWriter.forStreamWriter(pruner).write(input);
 
-        NormalizedNode<?, ?> actual = pruner.getResult().orElseThrow();
+        NormalizedNode actual = pruner.getResult().orElseThrow();
         assertEquals("normalizedNode", input, actual);
     }
 
     @Test
     public void testLeafSetEntryNodePrunedWhenHasNoParentAndSchemaMissing() throws IOException {
         AbstractNormalizedNodePruner pruner = prunerFullSchema(TestModel.TEST_PATH.node(TestModel.INVALID_QNAME));
-        NormalizedNode<?, ?> input = Builders.leafSetEntryBuilder().withValue("test").withNodeIdentifier(
+        NormalizedNode input = Builders.leafSetEntryBuilder().withValue("test").withNodeIdentifier(
                 new NodeWithValue<>(TestModel.INVALID_QNAME, "test")).build();
         NormalizedNodeWriter.forStreamWriter(pruner).write(input);
 
@@ -229,7 +229,7 @@ public class NormalizedNodePrunerTest {
         AbstractNormalizedNodePruner pruner = prunerFullSchema(TestModel.TEST_PATH.node(TestModel.INVALID_QNAME));
         LeafSetEntryNode<Object> child = Builders.leafSetEntryBuilder().withValue("test").withNodeIdentifier(
                 new NodeWithValue<>(TestModel.INVALID_QNAME, "test")).build();
-        NormalizedNode<?, ?> input = Builders.leafSetBuilder().withNodeIdentifier(
+        NormalizedNode input = Builders.leafSetBuilder().withNodeIdentifier(
                 new NodeIdentifier(TestModel.INVALID_QNAME)).withChild(child).build();
         NormalizedNodeWriter.forStreamWriter(pruner).write(input);
 
@@ -239,11 +239,11 @@ public class NormalizedNodePrunerTest {
     @Test
     public void testAnyXMLNodeNotPrunedWhenHasNoParent() throws IOException {
         AbstractNormalizedNodePruner pruner = prunerFullSchema(TestModel.TEST_PATH.node(TestModel.ANY_XML_QNAME));
-        NormalizedNode<?, ?> input = Builders.anyXmlBuilder().withNodeIdentifier(
+        NormalizedNode input = Builders.anyXmlBuilder().withNodeIdentifier(
                 new NodeIdentifier(TestModel.ANY_XML_QNAME)).withValue(mock(DOMSource.class)).build();
         NormalizedNodeWriter.forStreamWriter(pruner).write(input);
 
-        NormalizedNode<?, ?> actual = pruner.getResult().orElseThrow();
+        NormalizedNode actual = pruner.getResult().orElseThrow();
         assertEquals("normalizedNode", input, actual);
     }
 
@@ -252,18 +252,18 @@ public class NormalizedNodePrunerTest {
         AbstractNormalizedNodePruner pruner = prunerFullSchema(TestModel.TEST_PATH);
         DOMSourceAnyxmlNode child = Builders.anyXmlBuilder().withNodeIdentifier(
                 new NodeIdentifier(TestModel.ANY_XML_QNAME)).withValue(mock(DOMSource.class)).build();
-        NormalizedNode<?, ?> input = Builders.containerBuilder().withNodeIdentifier(
+        NormalizedNode input = Builders.containerBuilder().withNodeIdentifier(
                 new NodeIdentifier(TestModel.TEST_QNAME)).withChild(child).build();
         NormalizedNodeWriter.forStreamWriter(pruner).write(input);
 
-        NormalizedNode<?, ?> actual = pruner.getResult().orElseThrow();
+        NormalizedNode actual = pruner.getResult().orElseThrow();
         assertEquals("normalizedNode", input, actual);
     }
 
     @Test
     public void testAnyXmlNodePrunedWhenHasNoParentAndSchemaMissing() throws IOException {
         AbstractNormalizedNodePruner pruner = prunerNoTestSchema(TestModel.TEST_PATH.node(TestModel.ANY_XML_QNAME));
-        NormalizedNode<?, ?> input = Builders.anyXmlBuilder().withNodeIdentifier(
+        NormalizedNode input = Builders.anyXmlBuilder().withNodeIdentifier(
                 new NodeIdentifier(TestModel.ANY_XML_QNAME)).withValue(mock(DOMSource.class)).build();
         NormalizedNodeWriter.forStreamWriter(pruner).write(input);
 
@@ -278,10 +278,10 @@ public class NormalizedNodePrunerTest {
                 .node(TestModel.INNER_CONTAINER_QNAME).build();
         AbstractNormalizedNodePruner pruner = prunerFullSchema(path);
 
-        NormalizedNode<?, ?> input = ImmutableNodes.containerNode(TestModel.INNER_CONTAINER_QNAME);
+        NormalizedNode input = ImmutableNodes.containerNode(TestModel.INNER_CONTAINER_QNAME);
         NormalizedNodeWriter.forStreamWriter(pruner).write(input);
 
-        NormalizedNode<?, ?> actual = pruner.getResult().orElseThrow();
+        NormalizedNode actual = pruner.getResult().orElseThrow();
         assertEquals("normalizedNode", input, actual);
     }
 
@@ -293,7 +293,7 @@ public class NormalizedNodePrunerTest {
                 .node(TestModel.INVALID_QNAME).build();
         AbstractNormalizedNodePruner pruner = prunerFullSchema(path);
 
-        NormalizedNode<?, ?> input = ImmutableNodes.containerNode(TestModel.INVALID_QNAME);
+        NormalizedNode input = ImmutableNodes.containerNode(TestModel.INVALID_QNAME);
         NormalizedNodeWriter.forStreamWriter(pruner).write(input);
 
         assertEquals(Optional.empty(), pruner.getResult());
@@ -309,14 +309,14 @@ 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)
+        NormalizedNode 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)
+        NormalizedNode 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();
+        NormalizedNode actual = pruner.getResult().orElseThrow();
         assertEquals("normalizedNode", expected, actual);
     }
 
@@ -332,7 +332,7 @@ public class NormalizedNodePrunerTest {
                         ImmutableNodes.containerNode(TestModel.INNER_CONTAINER_QNAME)).build()).build();
         NormalizedNodeWriter.forStreamWriter(pruner).write(input);
 
-        NormalizedNode<?, ?> actual = pruner.getResult().orElseThrow();
+        NormalizedNode actual = pruner.getResult().orElseThrow();
         assertEquals("normalizedNode", input, actual);
     }
 
@@ -361,16 +361,16 @@ public class NormalizedNodePrunerTest {
         MapNode innerList = mapNodeBuilder(TestModel.INVALID_QNAME).withChild(mapEntryBuilder(
                 TestModel.INVALID_QNAME, TestModel.NAME_QNAME, "one").withChild(
                         ImmutableNodes.containerNode(TestModel.INNER_CONTAINER_QNAME)).build()).build();
-        NormalizedNode<?, ?> input = mapEntryBuilder(TestModel.OUTER_LIST_QNAME, TestModel.ID_QNAME, 1)
+        NormalizedNode input = mapEntryBuilder(TestModel.OUTER_LIST_QNAME, TestModel.ID_QNAME, 1)
                 .withChild(innerList).build();
         NormalizedNodeWriter.forStreamWriter(pruner).write(input);
 
-        NormalizedNode<?, ?> expected = mapEntry(TestModel.OUTER_LIST_QNAME, TestModel.ID_QNAME, 1);
-        NormalizedNode<?, ?> actual = pruner.getResult().orElseThrow();
+        NormalizedNode expected = mapEntry(TestModel.OUTER_LIST_QNAME, TestModel.ID_QNAME, 1);
+        NormalizedNode actual = pruner.getResult().orElseThrow();
         assertEquals("normalizedNode", expected, actual);
     }
 
-    private static NormalizedNode<?, ?> createTestContainer() {
+    private static NormalizedNode createTestContainer() {
         byte[] bytes1 = {1, 2, 3};
         LeafSetEntryNode<Object> entry1 = ImmutableLeafSetEntryNodeBuilder.create().withNodeIdentifier(
                 new NodeWithValue<>(TestModel.BINARY_LEAF_LIST_QNAME, bytes1)).withValue(bytes1).build();
index 33f6058ea734df099eb70851fdad1895cf4328c0..bba8739813a6863f8f9129bb2379c316277d8f25 100644 (file)
@@ -201,7 +201,7 @@ public class UintAdaptingPrunerTest {
                 .build()));
     }
 
-    private static NormalizedNode<?, ?> prune(final NormalizedNode<?, ?> node) throws IOException {
+    private static NormalizedNode prune(final NormalizedNode node) throws IOException {
         final ReusableNormalizedNodePruner pruner = ReusableNormalizedNodePruner.forSchemaContext(CONTEXT)
                 .withUintAdaption();
         pruner.initializeForPath(YangInstanceIdentifier.create(node.getIdentifier()));
index c613d6cf62ccb4b55d3afa20ceaa114897252c12..7120c31de00ae88d311bfe699ac5d8efbcc9466c 100644 (file)
@@ -32,13 +32,13 @@ 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.LeafSetNode;
 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.SystemMapNode;
 import org.opendaylight.yangtools.yang.data.api.schema.UnkeyedListEntryNode;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.CollectionNodeBuilder;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.DataContainerNodeBuilder;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.NormalizedNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.Builders;
 import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.CollectionNodeBuilder;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.DataContainerNodeBuilder;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.NormalizedNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableLeafSetEntryNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableLeafSetNodeBuilder;
@@ -335,8 +335,8 @@ public final class TestModel {
             familyContainerBuilder = ImmutableContainerNodeBuilder.create().withNodeIdentifier(
                         new NodeIdentifier(FAMILY_QNAME));
 
-        final CollectionNodeBuilder<MapEntryNode, MapNode> childrenBuilder =
-                mapNodeBuilder(CHILDREN_QNAME);
+        final CollectionNodeBuilder<MapEntryNode, SystemMapNode> childrenBuilder = mapNodeBuilder()
+            .withNodeIdentifier(new NodeIdentifier(CHILDREN_QNAME));
 
         final DataContainerNodeBuilder<NodeIdentifierWithPredicates, MapEntryNode>
             firstChildBuilder = mapEntryBuilder(CHILDREN_QNAME, CHILD_NUMBER_QNAME, FIRST_CHILD_ID);
index 068613dab095821922c2150d731d413f761b4f17..3dd54c2d7c81e68988d1bc08c324471cc48a53e5 100644 (file)
@@ -12,7 +12,7 @@
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>odlparent-lite</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
index 39703f0f67b9168d5d400c223b0f59fe939ad50f..02e9e047f4db93eb30380ac19bca7ecbfbea4de6 100644 (file)
@@ -73,15 +73,14 @@ public abstract class AbstractDOMBrokerWriteTransaction<T extends DOMStoreWriteT
     }
 
     @Override
-    public void put(final LogicalDatastoreType store, final YangInstanceIdentifier path,
-            final NormalizedNode<?, ?> data) {
+    public void put(final LogicalDatastoreType store, final YangInstanceIdentifier path, final NormalizedNode data) {
         checkRunning(commitImpl);
         checkInstanceIdentifierReferencesData(path,data);
         getSubtransaction(store).write(path, data);
     }
 
     private static void checkInstanceIdentifierReferencesData(final YangInstanceIdentifier path,
-            final NormalizedNode<?, ?> data) {
+            final NormalizedNode data) {
         checkArgument(data != null, "Attempted to store null data at %s", path);
         final PathArgument lastArg = path.getLastPathArgument();
         if (lastArg != null) {
@@ -97,8 +96,7 @@ public abstract class AbstractDOMBrokerWriteTransaction<T extends DOMStoreWriteT
     }
 
     @Override
-    public void merge(final LogicalDatastoreType store, final YangInstanceIdentifier path,
-            final NormalizedNode<?, ?> data) {
+    public void merge(final LogicalDatastoreType store, final YangInstanceIdentifier path, final NormalizedNode data) {
         checkRunning(commitImpl);
         checkInstanceIdentifierReferencesData(path, data);
         getSubtransaction(store).merge(path, data);
index 30a51dea4a5d74985010429863eba54440c1db9d..274c07e99bdbd34ca03065c4d046e5fae0d32296 100644 (file)
@@ -38,7 +38,7 @@ final class ClientBackedReadTransaction extends ClientBackedTransaction<ClientSn
     }
 
     @Override
-    public FluentFuture<Optional<NormalizedNode<?, ?>>> read(final YangInstanceIdentifier path) {
+    public FluentFuture<Optional<NormalizedNode>> read(final YangInstanceIdentifier path) {
         return delegate().read(path);
     }
 
index 6931d9accb29beeba82d8f98f8faf935febc6312..861dcd3a7daa781f7dc673d0368e8edab4165c24 100644 (file)
@@ -28,7 +28,7 @@ final class ClientBackedReadWriteTransaction extends ClientBackedWriteTransactio
     }
 
     @Override
-    public FluentFuture<Optional<NormalizedNode<?, ?>>> read(final YangInstanceIdentifier path) {
+    public FluentFuture<Optional<NormalizedNode>> read(final YangInstanceIdentifier path) {
         return delegate().read(path);
     }
 
index a1ffb3b256903aae384ab83bcc86d34d1c457cd6..2b5cf89ff9cc42c3103d9f97fb46b66ed1436bf1 100644 (file)
@@ -26,12 +26,12 @@ class ClientBackedWriteTransaction extends ClientBackedTransaction<ClientTransac
     }
 
     @Override
-    public final void write(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    public final void write(final YangInstanceIdentifier path, final NormalizedNode data) {
         delegate().write(path, data);
     }
 
     @Override
-    public final void merge(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    public final void merge(final YangInstanceIdentifier path, final NormalizedNode data) {
         delegate().merge(path, data);
     }
 
index afce5c053d8a2f3ef695e22a048c5a6672a90c24..c4d5e1d8a57734f451d304f227b9187e8e59a43c 100644 (file)
@@ -26,13 +26,13 @@ public class DOMBrokerReadOnlyTransaction
      *
      * @param identifier Identifier of transaction.
      */
-    protected DOMBrokerReadOnlyTransaction(Object identifier,
-            Map<LogicalDatastoreType, ? extends DOMStoreTransactionFactory> storeTxFactories) {
+    protected DOMBrokerReadOnlyTransaction(final Object identifier,
+            final Map<LogicalDatastoreType, ? extends DOMStoreTransactionFactory> storeTxFactories) {
         super(identifier, storeTxFactories);
     }
 
     @Override
-    public FluentFuture<Optional<NormalizedNode<?, ?>>> read(final LogicalDatastoreType store,
+    public FluentFuture<Optional<NormalizedNode>> read(final LogicalDatastoreType store,
             final YangInstanceIdentifier path) {
         return getSubtransaction(store).read(path);
     }
@@ -48,7 +48,7 @@ public class DOMBrokerReadOnlyTransaction
     }
 
     @Override
-    protected DOMStoreReadTransaction createTransaction(LogicalDatastoreType key) {
+    protected DOMStoreReadTransaction createTransaction(final LogicalDatastoreType key) {
         return getTxFactory(key).newReadOnlyTransaction();
     }
 }
index 86b915bc9d06bee2d0cd67dc621aa62c0aafb1d7..d9031c2d625fd6b8b7ddc2d1fffe8191306308a8 100644 (file)
@@ -26,14 +26,14 @@ public class DOMBrokerReadWriteTransaction extends AbstractDOMBrokerWriteTransac
      * @param identifier identifier of transaction.
      * @param storeTxFactories the backing transaction store factories
      */
-    protected DOMBrokerReadWriteTransaction(Object identifier,
-            Map<LogicalDatastoreType, ? extends DOMStoreTransactionFactory>  storeTxFactories,
+    protected DOMBrokerReadWriteTransaction(final Object identifier,
+            final Map<LogicalDatastoreType, ? extends DOMStoreTransactionFactory>  storeTxFactories,
             final AbstractDOMTransactionFactory<?> commitImpl) {
         super(identifier, storeTxFactories, commitImpl);
     }
 
     @Override
-    public FluentFuture<Optional<NormalizedNode<?,?>>> read(final LogicalDatastoreType store,
+    public FluentFuture<Optional<NormalizedNode>> read(final LogicalDatastoreType store,
             final YangInstanceIdentifier path) {
         return getSubtransaction(store).read(path);
     }
@@ -44,7 +44,7 @@ public class DOMBrokerReadWriteTransaction extends AbstractDOMBrokerWriteTransac
     }
 
     @Override
-    protected DOMStoreReadWriteTransaction createTransaction(LogicalDatastoreType key) {
+    protected DOMStoreReadWriteTransaction createTransaction(final LogicalDatastoreType key) {
         return getTxFactory(key).newReadWriteTransaction();
     }
 }
index 1ed1e940d3dd0ab810ac91d5ad18f53959d6a6f2..8fb042fba10a69222ca7219b9b258ef51cc9e664 100644 (file)
@@ -294,13 +294,13 @@ abstract class AbstractProxyTransaction implements Identifiable<TransactionIdent
         doDelete(path);
     }
 
-    final void merge(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    final void merge(final YangInstanceIdentifier path, final NormalizedNode data) {
         checkReadWrite();
         checkNotSealed();
         doMerge(path, data);
     }
 
-    final void write(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    final void write(final YangInstanceIdentifier path, final NormalizedNode data) {
         checkReadWrite();
         checkNotSealed();
         doWrite(path, data);
@@ -311,7 +311,7 @@ abstract class AbstractProxyTransaction implements Identifiable<TransactionIdent
         return doExists(path);
     }
 
-    final FluentFuture<Optional<NormalizedNode<?, ?>>> read(final YangInstanceIdentifier path) {
+    final FluentFuture<Optional<NormalizedNode>> read(final YangInstanceIdentifier path) {
         checkNotSealed();
         return doRead(path);
     }
@@ -801,13 +801,13 @@ abstract class AbstractProxyTransaction implements Identifiable<TransactionIdent
 
     abstract void doDelete(YangInstanceIdentifier path);
 
-    abstract void doMerge(YangInstanceIdentifier path, NormalizedNode<?, ?> data);
+    abstract void doMerge(YangInstanceIdentifier path, NormalizedNode data);
 
-    abstract void doWrite(YangInstanceIdentifier path, NormalizedNode<?, ?> data);
+    abstract void doWrite(YangInstanceIdentifier path, NormalizedNode data);
 
     abstract FluentFuture<Boolean> doExists(YangInstanceIdentifier path);
 
-    abstract FluentFuture<Optional<NormalizedNode<?, ?>>> doRead(YangInstanceIdentifier path);
+    abstract FluentFuture<Optional<NormalizedNode>> doRead(YangInstanceIdentifier path);
 
     @GuardedBy("this")
     abstract Optional<ModifyTransactionRequest> flushState();
index c8b1328cfdb53017842a4f4ed377e33c7bc5b3e1..d20a618c3df0c2d97feb8fbf951d6168a00cd5cb 100644 (file)
@@ -31,7 +31,7 @@ public class ClientSnapshot extends AbstractClientHandle<AbstractProxyTransactio
         return ensureSnapshotProxy(path).exists(path);
     }
 
-    public FluentFuture<Optional<NormalizedNode<?, ?>>> read(final YangInstanceIdentifier path) {
+    public FluentFuture<Optional<NormalizedNode>> read(final YangInstanceIdentifier path) {
         return ensureSnapshotProxy(path).read(path);
     }
 
index 794a1be9606adbcd2ccb3b55716ccc9000dd52c6..9b4c5a962f9b62959ffc3464b475c27a7d198b59 100644 (file)
@@ -62,7 +62,7 @@ public class ClientTransaction extends AbstractClientHandle<AbstractProxyTransac
         return ensureTransactionProxy(path).exists(path);
     }
 
-    public FluentFuture<Optional<NormalizedNode<?, ?>>> read(final YangInstanceIdentifier path) {
+    public FluentFuture<Optional<NormalizedNode>> read(final YangInstanceIdentifier path) {
         return ensureTransactionProxy(path).read(path);
     }
 
@@ -70,11 +70,11 @@ public class ClientTransaction extends AbstractClientHandle<AbstractProxyTransac
         ensureTransactionProxy(path).delete(path);
     }
 
-    public void merge(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    public void merge(final YangInstanceIdentifier path, final NormalizedNode data) {
         ensureTransactionProxy(path).merge(path, data);
     }
 
-    public void write(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    public void write(final YangInstanceIdentifier path, final NormalizedNode data) {
         ensureTransactionProxy(path).write(path, data);
     }
 
index 6edbf6ca0de5bfe371b9460c956057bc1c5928a4..561870839d9f86c856d7d2a03e368e90e0fd21d2 100644 (file)
@@ -81,7 +81,7 @@ abstract class LocalProxyTransaction extends AbstractProxyTransaction {
     }
 
     @Override
-    final FluentFuture<Optional<NormalizedNode<?, ?>>> doRead(final YangInstanceIdentifier path) {
+    final FluentFuture<Optional<NormalizedNode>> doRead(final YangInstanceIdentifier path) {
         return FluentFutures.immediateFluentFuture(readOnlyView().readNode(path));
     }
 
@@ -105,7 +105,7 @@ abstract class LocalProxyTransaction extends AbstractProxyTransaction {
         // listeners, which we do not want to execute while we are reconnecting.
         if (request instanceof ReadTransactionRequest) {
             final YangInstanceIdentifier path = ((ReadTransactionRequest) request).getPath();
-            final Optional<NormalizedNode<?, ?>> result = readOnlyView().readNode(path);
+            final Optional<NormalizedNode> result = readOnlyView().readNode(path);
             if (callback != null) {
                 // XXX: FB does not see that callback is final, on stack and has be check for non-null.
                 final Consumer<Response<?, ?>> fbIsStupid = requireNonNull(callback);
@@ -176,12 +176,12 @@ abstract class LocalProxyTransaction extends AbstractProxyTransaction {
             LOG.debug("Applying modification {} to successor {}", mod, successor);
             mod.applyToCursor(new AbstractDataTreeModificationCursor() {
                 @Override
-                public void write(final PathArgument child, final NormalizedNode<?, ?> data) {
+                public void write(final PathArgument child, final NormalizedNode data) {
                     successor.write(current().node(child), data);
                 }
 
                 @Override
-                public void merge(final PathArgument child, final NormalizedNode<?, ?> data) {
+                public void merge(final PathArgument child, final NormalizedNode data) {
                     successor.merge(current().node(child), data);
                 }
 
index f9de02d9914f8a22a3d16d89c390b47601c04776..8cdbcf878ca55ec904ea84953ea39fc717ef322b 100644 (file)
@@ -28,7 +28,6 @@ import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeSnapshot;
  * @author Robert Varga
  */
 final class LocalReadOnlyProxyTransaction extends LocalProxyTransaction {
-
     private final DataTreeSnapshot snapshot;
 
     LocalReadOnlyProxyTransaction(final ProxyHistory parent, final TransactionIdentifier identifier,
@@ -59,12 +58,12 @@ final class LocalReadOnlyProxyTransaction extends LocalProxyTransaction {
     }
 
     @Override
-    void doMerge(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    void doMerge(final YangInstanceIdentifier path, final NormalizedNode data) {
         throw new UnsupportedOperationException("doMerge");
     }
 
     @Override
-    void doWrite(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    void doWrite(final YangInstanceIdentifier path, final NormalizedNode data) {
         throw new UnsupportedOperationException("doWrite");
     }
 
index 9fa8ac7c42748e3f464ce86e85dbe2694f60d1df..1f1e394932832278cbf0f80edc2936647a292cd6 100644 (file)
@@ -125,7 +125,7 @@ final class LocalReadWriteProxyTransaction extends LocalProxyTransaction {
 
     @Override
     @SuppressWarnings("checkstyle:IllegalCatch")
-    void doMerge(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    void doMerge(final YangInstanceIdentifier path, final NormalizedNode data) {
         final CursorAwareDataTreeModification mod = getModification();
         if (recordedFailure != null) {
             LOG.debug("Transaction {} recorded failure, ignoring merge to {}", getIdentifier(), path);
@@ -143,7 +143,7 @@ final class LocalReadWriteProxyTransaction extends LocalProxyTransaction {
 
     @Override
     @SuppressWarnings("checkstyle:IllegalCatch")
-    void doWrite(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    void doWrite(final YangInstanceIdentifier path, final NormalizedNode data) {
         final CursorAwareDataTreeModification mod = getModification();
         if (recordedFailure != null) {
             LOG.debug("Transaction {} recorded failure, ignoring write to {}", getIdentifier(), path);
@@ -202,12 +202,12 @@ final class LocalReadWriteProxyTransaction extends LocalProxyTransaction {
 
         sealedModification.applyToCursor(new AbstractDataTreeModificationCursor() {
             @Override
-            public void write(final PathArgument child, final NormalizedNode<?, ?> data) {
+            public void write(final PathArgument child, final NormalizedNode data) {
                 b.addModification(new TransactionWrite(current().node(child), data));
             }
 
             @Override
-            public void merge(final PathArgument child, final NormalizedNode<?, ?> data) {
+            public void merge(final PathArgument child, final NormalizedNode data) {
                 b.addModification(new TransactionMerge(current().node(child), data));
             }
 
index d0d7946f62451cca0f6c34750166ef692cbc272d..824a2f9b31ebed9c0f02f69c366061002604db92 100644 (file)
@@ -105,12 +105,12 @@ final class RemoteProxyTransaction extends AbstractProxyTransaction {
     }
 
     @Override
-    void doMerge(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    void doMerge(final YangInstanceIdentifier path, final NormalizedNode data) {
         appendModification(new TransactionMerge(path, data), OptionalLong.empty());
     }
 
     @Override
-    void doWrite(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    void doWrite(final YangInstanceIdentifier path, final NormalizedNode data) {
         appendModification(new TransactionWrite(path, data), OptionalLong.empty());
     }
 
@@ -137,8 +137,8 @@ final class RemoteProxyTransaction extends AbstractProxyTransaction {
     }
 
     @Override
-    FluentFuture<Optional<NormalizedNode<?, ?>>> doRead(final YangInstanceIdentifier path) {
-        final SettableFuture<Optional<NormalizedNode<?, ?>>> future = SettableFuture.create();
+    FluentFuture<Optional<NormalizedNode>> doRead(final YangInstanceIdentifier path) {
+        final SettableFuture<Optional<NormalizedNode>> future = SettableFuture.create();
         return sendReadRequest(new ReadTransactionRequest(getIdentifier(), nextSequence(), localActor(), path,
             isSnapshotOnly()), t -> completeRead(path, future, t), future);
     }
@@ -239,8 +239,8 @@ final class RemoteProxyTransaction extends AbstractProxyTransaction {
         recordFinishedRequest(response);
     }
 
-    private void completeRead(final YangInstanceIdentifier path,
-            final SettableFuture<Optional<NormalizedNode<?, ?>>> future, final Response<?, ?> response) {
+    private void completeRead(final YangInstanceIdentifier path, final SettableFuture<Optional<NormalizedNode>> future,
+            final Response<?, ?> response) {
         LOG.debug("Read request for {} completed with {}", path, response);
 
         if (response instanceof ReadTransactionSuccess) {
@@ -415,12 +415,12 @@ final class RemoteProxyTransaction extends AbstractProxyTransaction {
 
         mod.applyToCursor(new AbstractDataTreeModificationCursor() {
             @Override
-            public void write(final PathArgument child, final NormalizedNode<?, ?> data) {
+            public void write(final PathArgument child, final NormalizedNode data) {
                 appendModification(new TransactionWrite(current().node(child), data), optTicks);
             }
 
             @Override
-            public void merge(final PathArgument child, final NormalizedNode<?, ?> data) {
+            public void merge(final PathArgument child, final NormalizedNode data) {
                 appendModification(new TransactionMerge(current().node(child), data), optTicks);
             }
 
index 512e9f4957d550486f1d0f220c694dd7ddcb5e68..e8b99e60a540288b77bbcba5fecc0e1965f1733c 100644 (file)
@@ -81,13 +81,13 @@ final class FrontendReadOnlyTransaction extends FrontendTransaction {
     }
 
     private ExistsTransactionSuccess handleExistsTransaction(final ExistsTransactionRequest request) {
-        final Optional<NormalizedNode<?, ?>> data = openTransaction.getSnapshot().readNode(request.getPath());
+        final Optional<NormalizedNode> data = openTransaction.getSnapshot().readNode(request.getPath());
         return recordSuccess(request.getSequence(), new ExistsTransactionSuccess(openTransaction.getIdentifier(),
             request.getSequence(), data.isPresent()));
     }
 
     private ReadTransactionSuccess handleReadTransaction(final ReadTransactionRequest request) {
-        final Optional<NormalizedNode<?, ?>> data = openTransaction.getSnapshot().readNode(request.getPath());
+        final Optional<NormalizedNode> data = openTransaction.getSnapshot().readNode(request.getPath());
         return recordSuccess(request.getSequence(), new ReadTransactionSuccess(openTransaction.getIdentifier(),
             request.getSequence(), data));
     }
index 777490b40c646def4d69c706f74dae49d0de3958..4bd2a5725758b228c1803414b74e116810ca40b9 100644 (file)
@@ -524,13 +524,13 @@ final class FrontendReadWriteTransaction extends FrontendTransaction {
     }
 
     private ExistsTransactionSuccess handleExistsTransaction(final ExistsTransactionRequest request) {
-        final Optional<NormalizedNode<?, ?>> data = checkOpen().getSnapshot().readNode(request.getPath());
+        final Optional<NormalizedNode> data = checkOpen().getSnapshot().readNode(request.getPath());
         return recordSuccess(request.getSequence(), new ExistsTransactionSuccess(getIdentifier(), request.getSequence(),
             data.isPresent()));
     }
 
     private ReadTransactionSuccess handleReadTransaction(final ReadTransactionRequest request) {
-        final Optional<NormalizedNode<?, ?>> data = checkOpen().getSnapshot().readNode(request.getPath());
+        final Optional<NormalizedNode> data = checkOpen().getSnapshot().readNode(request.getPath());
         return recordSuccess(request.getSequence(), new ReadTransactionSuccess(getIdentifier(), request.getSequence(),
             data));
     }
index b201486fb2267c8bad28e8cd5d0ecbc9bf045bb4..5435bb548d5c58e91e2f20d07dc7895f97755df8 100644 (file)
@@ -50,7 +50,7 @@ abstract class LocalTransactionContext extends AbstractTransactionContext {
     protected abstract DOMStoreReadTransaction getReadDelegate();
 
     @SuppressWarnings("checkstyle:IllegalCatch")
-    private void executeModification(Consumer<DOMStoreWriteTransaction> consumer) {
+    private void executeModification(final Consumer<DOMStoreWriteTransaction> consumer) {
         incrementModificationCount();
         if (operationError == null) {
             try {
@@ -67,14 +67,12 @@ abstract class LocalTransactionContext extends AbstractTransactionContext {
     }
 
     @Override
-    public void executeMerge(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data,
-            final Boolean havePermit) {
+    public void executeMerge(final YangInstanceIdentifier path, final NormalizedNode data, final Boolean havePermit) {
         executeModification(transaction -> transaction.merge(path, data));
     }
 
     @Override
-    public void executeWrite(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data,
-            final Boolean havePermit) {
+    public void executeWrite(final YangInstanceIdentifier path, final NormalizedNode data, final Boolean havePermit) {
         executeModification(transaction -> transaction.write(path, data));
     }
 
index cee9d784acc46e7170b696daaaca26bcc54e2825..d98a1b4046a33f456213c8528b88aa5387b70e85 100644 (file)
@@ -72,14 +72,12 @@ final class NoOpTransactionContext extends AbstractTransactionContext {
     }
 
     @Override
-    public void executeMerge(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data,
-            final Boolean havePermit) {
+    public void executeMerge(final YangInstanceIdentifier path, final NormalizedNode data, final Boolean havePermit) {
         LOG.debug("Tx {} executeMerge called path = {}", getIdentifier(), path);
     }
 
     @Override
-    public void executeWrite(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data,
-            final Boolean havePermit) {
+    public void executeWrite(final YangInstanceIdentifier path, final NormalizedNode data, final Boolean havePermit) {
         LOG.debug("Tx {} executeWrite called path = {}", getIdentifier(), path);
     }
 }
index ba1d05068b0ffc23b68097e8e4109baca1fbd9d6..a7e76ed436af511f74427372868cdedf82d9464e 100644 (file)
@@ -208,15 +208,13 @@ public class RemoteTransactionContext extends AbstractTransactionContext {
     }
 
     @Override
-    public void executeMerge(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data,
-            final Boolean havePermit) {
+    public void executeMerge(final YangInstanceIdentifier path, final NormalizedNode data, final Boolean havePermit) {
         LOG.debug("Tx {} executeMerge called path = {}", getIdentifier(), path);
         executeModification(new MergeModification(path, data), havePermit);
     }
 
     @Override
-    public void executeWrite(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data,
-            final Boolean havePermit) {
+    public void executeWrite(final YangInstanceIdentifier path, final NormalizedNode data, final Boolean havePermit) {
         LOG.debug("Tx {} executeWrite called path = {}", getIdentifier(), path);
         executeModification(new WriteModification(path, data), havePermit);
     }
@@ -226,7 +224,7 @@ public class RemoteTransactionContext extends AbstractTransactionContext {
         if (havePermit == null) {
             permitToRelease = failedModification == null && acquireOperation();
         } else {
-            permitToRelease = havePermit.booleanValue();
+            permitToRelease = havePermit;
         }
 
         batchModification(modification, permitToRelease);
@@ -251,7 +249,7 @@ public class RemoteTransactionContext extends AbstractTransactionContext {
         // Send any batched modifications. This is necessary to honor the read uncommitted semantics of the
         // public API contract.
 
-        final boolean permitToRelease = havePermit == null ? acquireOperation() : havePermit.booleanValue();
+        final boolean permitToRelease = havePermit == null ? acquireOperation() : havePermit;
         sendBatchedModifications();
 
         OnComplete<Object> onComplete = new OnComplete<>() {
index 8a826ef67a2b21a21c657783a5b338ddc4cd312a..832228961828eda1b1b5ea268a4d4c22264aca7c 100644 (file)
@@ -26,11 +26,11 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
 import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.DataContainerNodeBuilder;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNodes;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidates;
 import org.opendaylight.yangtools.yang.data.impl.schema.Builders;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.DataContainerNodeBuilder;
 import org.opendaylight.yangtools.yang.model.api.SchemaContext;
 
 final class RootDataTreeChangeListenerActor extends DataTreeChangeListenerActor {
@@ -111,9 +111,9 @@ final class RootDataTreeChangeListenerActor extends DataTreeChangeListenerActor
                     initial = Iterables.get(changes, 0);
                 }
 
-                final NormalizedNode<?, ?> root = initial.getRootNode().getDataAfter().orElseThrow();
+                final NormalizedNode root = initial.getRootNode().getDataAfter().orElseThrow();
                 verify(root instanceof ContainerNode, "Unexpected root node %s", root);
-                ((ContainerNode) root).getValue().forEach(rootBuilder::withChild);
+                ((ContainerNode) root).body().forEach(rootBuilder::withChild);
             }
         }
         // We will not be intercepting any other messages, allow initial state to be reclaimed as soon as possible
index b3688a87fa2baf0c71f46d47292cd8818525fc80..bd5d7360b268fdd24974b4d716a73743d61093d3 100644 (file)
@@ -231,7 +231,7 @@ public class ShardDataTree extends ShardDataTreeTransactionParent {
      * @return A state snapshot
      */
     @NonNull ShardDataTreeSnapshot takeStateSnapshot() {
-        final NormalizedNode<?, ?> rootNode = dataTree.takeSnapshot().readNode(YangInstanceIdentifier.empty()).get();
+        final NormalizedNode rootNode = dataTree.takeSnapshot().readNode(YangInstanceIdentifier.empty()).get();
         final Builder<Class<? extends ShardDataTreeSnapshotMetadata<?>>, ShardDataTreeSnapshotMetadata<?>> metaBuilder =
                 ImmutableMap.builder();
 
@@ -278,7 +278,7 @@ public class ShardDataTree extends ShardDataTreeTransactionParent {
         // delete everything first
         mod.delete(YangInstanceIdentifier.empty());
 
-        final Optional<NormalizedNode<?, ?>> maybeNode = snapshot.getRootNode();
+        final Optional<NormalizedNode> maybeNode = snapshot.getRootNode();
         if (maybeNode.isPresent()) {
             // Add everything from the remote node back
             mod.write(YangInstanceIdentifier.empty(), maybeNode.get());
@@ -739,7 +739,7 @@ public class ShardDataTree extends ShardDataTreeTransactionParent {
                 id, shard.getDatastoreContext().getInitialPayloadSerializedBufferCapacity()), callback);
     }
 
-    public Optional<NormalizedNode<?, ?>> readNode(final YangInstanceIdentifier path) {
+    public Optional<NormalizedNode> readNode(final YangInstanceIdentifier path) {
         return dataTree.takeSnapshot().readNode(path);
     }
 
index a6c56a547370ef1eca8d95240131985f92e2c5df..87d70da1ab3a9c41b0898b7a8551242655b297ee 100644 (file)
@@ -105,7 +105,7 @@ abstract class ShardRecoveryCoordinator implements RaftActorRecoveryCohort {
         open = false;
     }
 
-    private File writeRoot(final String kind, final NormalizedNode<?, ?> node) {
+    private File writeRoot(final String kind, final NormalizedNode node) {
         final File file = new File(System.getProperty("karaf.data", "."),
             "failed-recovery-" + kind + "-" + shardName + ".xml");
         NormalizedNodeXMLOutput.toFile(file, node);
index fe36661e671032d82caf8579967efa92e84b9513..cafc2a82eabcf01b18bd5bc1074fa2e412facf7c 100644 (file)
@@ -29,9 +29,9 @@ interface TransactionContext {
 
     void executeDelete(YangInstanceIdentifier path, Boolean havePermit);
 
-    void executeMerge(YangInstanceIdentifier path, NormalizedNode<?, ?> data, Boolean havePermit);
+    void executeMerge(YangInstanceIdentifier path, NormalizedNode data, Boolean havePermit);
 
-    void executeWrite(YangInstanceIdentifier path, NormalizedNode<?, ?> data, Boolean havePermit);
+    void executeWrite(YangInstanceIdentifier path, NormalizedNode data, Boolean havePermit);
 
     Future<Object> directCommit(Boolean havePermit);
 
index 9f7b008f651dd19c43267e148eb6b147ba6729e5..eeaec6b9984323a15fc0d59ca245e00d1a4e369e 100644 (file)
@@ -18,14 +18,14 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
  */
 abstract class TransactionModificationOperation extends TransactionOperation {
     private abstract static class AbstractDataOperation extends TransactionModificationOperation {
-        private final NormalizedNode<?, ?> data;
+        private final NormalizedNode data;
 
-        AbstractDataOperation(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+        AbstractDataOperation(final YangInstanceIdentifier path, final NormalizedNode data) {
             super(path);
             this.data = requireNonNull(data);
         }
 
-        final NormalizedNode<?, ?> data() {
+        final NormalizedNode data() {
             return data;
         }
     }
@@ -42,7 +42,7 @@ abstract class TransactionModificationOperation extends TransactionOperation {
     }
 
     static final class MergeOperation extends AbstractDataOperation {
-        MergeOperation(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+        MergeOperation(final YangInstanceIdentifier path, final NormalizedNode data) {
             super(path, data);
         }
 
@@ -53,7 +53,7 @@ abstract class TransactionModificationOperation extends TransactionOperation {
     }
 
     static final class WriteOperation extends AbstractDataOperation {
-        WriteOperation(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+        WriteOperation(final YangInstanceIdentifier path, final NormalizedNode data) {
             super(path, data);
         }
 
index 9e5985a741738d9010ba5a53567d462c41911f7c..ce0461ffaf45b98c2db34fd28a696c02209b39a8 100644 (file)
@@ -47,9 +47,9 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent
 import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
 import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.DataContainerNodeBuilder;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException;
 import org.opendaylight.yangtools.yang.data.impl.schema.Builders;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.DataContainerNodeBuilder;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import scala.concurrent.Future;
@@ -107,7 +107,7 @@ public class TransactionProxy extends AbstractDOMStoreTransaction<TransactionIde
     }
 
     @Override
-    public FluentFuture<Optional<NormalizedNode<?, ?>>> read(final YangInstanceIdentifier path) {
+    public FluentFuture<Optional<NormalizedNode>> read(final YangInstanceIdentifier path) {
         checkState(type != TransactionType.WRITE_ONLY, "Reads from write-only transactions are not allowed");
         requireNonNull(path, "path should not be null");
 
@@ -115,21 +115,21 @@ public class TransactionProxy extends AbstractDOMStoreTransaction<TransactionIde
         return path.isEmpty() ? readAllData() : singleShardRead(shardNameFromIdentifier(path), path);
     }
 
-    private FluentFuture<Optional<NormalizedNode<?, ?>>> singleShardRead(
-            final String shardName, final YangInstanceIdentifier path) {
+    private FluentFuture<Optional<NormalizedNode>> singleShardRead(final String shardName,
+            final YangInstanceIdentifier path) {
         return executeRead(shardName, new ReadData(path, DataStoreVersions.CURRENT_VERSION));
     }
 
-    private FluentFuture<Optional<NormalizedNode<?, ?>>> readAllData() {
+    private FluentFuture<Optional<NormalizedNode>> readAllData() {
         final Set<String> allShardNames = txContextFactory.getActorUtils().getConfiguration().getAllShardNames();
-        final Collection<FluentFuture<Optional<NormalizedNode<?, ?>>>> futures = new ArrayList<>(allShardNames.size());
+        final Collection<FluentFuture<Optional<NormalizedNode>>> futures = new ArrayList<>(allShardNames.size());
 
         for (String shardName : allShardNames) {
             futures.add(singleShardRead(shardName, YangInstanceIdentifier.empty()));
         }
 
-        final ListenableFuture<List<Optional<NormalizedNode<?, ?>>>> listFuture = Futures.allAsList(futures);
-        final ListenableFuture<Optional<NormalizedNode<?, ?>>> aggregateFuture;
+        final ListenableFuture<List<Optional<NormalizedNode>>> listFuture = Futures.allAsList(futures);
+        final ListenableFuture<Optional<NormalizedNode>> aggregateFuture;
 
         aggregateFuture = Futures.transform(listFuture, input -> {
             try {
@@ -162,7 +162,7 @@ public class TransactionProxy extends AbstractDOMStoreTransaction<TransactionIde
     }
 
     @Override
-    public void merge(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    public void merge(final YangInstanceIdentifier path, final NormalizedNode data) {
         checkModificationState("merge", path);
 
         if (path.isEmpty()) {
@@ -175,7 +175,7 @@ public class TransactionProxy extends AbstractDOMStoreTransaction<TransactionIde
     private void mergeAllData(final ContainerNode rootData) {
         // Populate requests for individual shards that are being touched
         final Map<String, DataContainerNodeBuilder<NodeIdentifier, ContainerNode>> rootBuilders = new HashMap<>();
-        for (DataContainerChild<?, ?> child : rootData.getValue()) {
+        for (DataContainerChild child : rootData.body()) {
             final String shardName = shardNameFromRootChild(child);
             rootBuilders.computeIfAbsent(shardName,
                 unused -> Builders.containerBuilder().withNodeIdentifier(rootData.getIdentifier()))
@@ -190,7 +190,7 @@ public class TransactionProxy extends AbstractDOMStoreTransaction<TransactionIde
     }
 
     @Override
-    public void write(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    public void write(final YangInstanceIdentifier path, final NormalizedNode data) {
         checkModificationState("write", path);
 
         if (path.isEmpty()) {
@@ -208,7 +208,7 @@ public class TransactionProxy extends AbstractDOMStoreTransaction<TransactionIde
         }
 
         // Now distribute children as needed
-        for (DataContainerChild<?, ?> child : rootData.getValue()) {
+        for (DataContainerChild child : rootData.body()) {
             final String shardName = shardNameFromRootChild(child);
             verifyNotNull(rootBuilders.get(shardName), "Failed to find builder for %s", shardName).addChild(child);
         }
@@ -224,7 +224,7 @@ public class TransactionProxy extends AbstractDOMStoreTransaction<TransactionIde
         getContextWrapper(operation.path()).maybeExecuteTransactionOperation(operation);
     }
 
-    private static ContainerNode checkRootData(final NormalizedNode<?, ?> data) {
+    private static ContainerNode checkRootData(final NormalizedNode data) {
         // Root has to be a container
         checkArgument(data instanceof ContainerNode, "Invalid root data %s", data);
         return (ContainerNode) data;
@@ -353,7 +353,7 @@ public class TransactionProxy extends AbstractDOMStoreTransaction<TransactionIde
         return new ThreePhaseCommitCohortProxy(txContextFactory.getActorUtils(), cohorts, getIdentifier());
     }
 
-    private String shardNameFromRootChild(final DataContainerChild<?, ?> child) {
+    private String shardNameFromRootChild(final DataContainerChild child) {
         return shardNameFromIdentifier(YangInstanceIdentifier.create(child.getIdentifier()));
     }
 
index ab52385893a7fb43f00db90cdada2b464a980315..8e132f26d19a2e4ccdc0ed683a7dadb5df6f6751 100644 (file)
@@ -182,7 +182,7 @@ public class ConfigurationImpl implements Configuration {
         requireNonNull(config, "ModuleShardConfiguration should not be null");
 
         ModuleConfig moduleConfig = ModuleConfig.builder(config.getModuleName())
-                .nameSpace(config.getNamespace().toASCIIString())
+                .nameSpace(config.getNamespace().toString())
                 .shardStrategy(createShardStrategy(config.getModuleName(), config.getShardStrategyName()))
                 .shardConfig(config.getShardName(), config.getShardMemberNames()).build();
 
index d858b5f962ae0799d1adc9d00f783dea9bcfc76b..177eb8d7342fe5f5b6f523af9a7121faa536cec1 100644 (file)
@@ -9,11 +9,11 @@ package org.opendaylight.controller.cluster.datastore.config;
 
 import static java.util.Objects.requireNonNull;
 
-import java.net.URI;
 import java.util.Collection;
 import org.eclipse.jdt.annotation.NonNull;
 import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.controller.cluster.access.concepts.MemberName;
+import org.opendaylight.yangtools.yang.common.XMLNamespace;
 
 /**
  * Encapsulates information for adding a new module shard configuration.
@@ -21,7 +21,7 @@ import org.opendaylight.controller.cluster.access.concepts.MemberName;
  * @author Thomas Pantelis
  */
 public class ModuleShardConfiguration {
-    private final URI namespace;
+    private final XMLNamespace namespace;
     private final String moduleName;
     private final String shardName;
     private final String shardStrategyName;
@@ -37,8 +37,9 @@ public class ModuleShardConfiguration {
      *                          is used.
      * @param shardMemberNames the names of the shard's member replicas.
      */
-    public ModuleShardConfiguration(@NonNull URI namespace, @NonNull String moduleName, @NonNull String shardName,
-            @Nullable String shardStrategyName, @NonNull Collection<MemberName> shardMemberNames) {
+    public ModuleShardConfiguration(final @NonNull XMLNamespace namespace, final @NonNull String moduleName,
+            final @NonNull String shardName, final @Nullable String shardStrategyName,
+            final @NonNull Collection<MemberName> shardMemberNames) {
         this.namespace = requireNonNull(namespace, "nameSpace should not be null");
         this.moduleName = requireNonNull(moduleName, "moduleName should not be null");
         this.shardName = requireNonNull(shardName, "shardName should not be null");
@@ -46,7 +47,7 @@ public class ModuleShardConfiguration {
         this.shardMemberNames = requireNonNull(shardMemberNames, "shardMemberNames");
     }
 
-    public URI getNamespace() {
+    public XMLNamespace getNamespace() {
         return namespace;
     }
 
index 6352b5734b9dae632f187792c5119d1ce815fb10..1113a854bfda89e457bf9cd17c736d9e2f8159fa 100644 (file)
@@ -5,7 +5,6 @@
  * 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.datastore.messages;
 
 import com.google.common.base.Preconditions;
@@ -17,33 +16,34 @@ import org.opendaylight.mdsal.dom.spi.store.DOMStoreReadTransaction;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 
-public class ReadData extends AbstractRead<Optional<NormalizedNode<?, ?>>> {
+public class ReadData extends AbstractRead<Optional<NormalizedNode>> {
     private static final long serialVersionUID = 1L;
 
     public ReadData() {
     }
 
-    public ReadData(final YangInstanceIdentifier path, short version) {
+    public ReadData(final YangInstanceIdentifier path, final short version) {
         super(path, version);
     }
 
     @Override
-    public FluentFuture<Optional<NormalizedNode<?, ?>>> apply(DOMStoreReadTransaction readDelegate) {
+    public FluentFuture<Optional<NormalizedNode>> apply(final DOMStoreReadTransaction readDelegate) {
         return readDelegate.read(getPath());
     }
 
     @Override
-    public void processResponse(Object readResponse, SettableFuture<Optional<NormalizedNode<?, ?>>> returnFuture) {
+    public void processResponse(final Object readResponse,
+            final SettableFuture<Optional<NormalizedNode>> returnFuture) {
         if (ReadDataReply.isSerializedType(readResponse)) {
             ReadDataReply reply = ReadDataReply.fromSerializable(readResponse);
-            returnFuture.set(Optional.<NormalizedNode<?, ?>>ofNullable(reply.getNormalizedNode()));
+            returnFuture.set(Optional.ofNullable(reply.getNormalizedNode()));
         } else {
             returnFuture.setException(new ReadFailedException("Invalid response reading data for path " + getPath()));
         }
     }
 
     @Override
-    protected AbstractRead<Optional<NormalizedNode<?, ?>>> newInstance(short withVersion) {
+    protected AbstractRead<Optional<NormalizedNode>> newInstance(final short withVersion) {
         return new ReadData(getPath(), withVersion);
     }
 
@@ -52,7 +52,7 @@ public class ReadData extends AbstractRead<Optional<NormalizedNode<?, ?>>> {
         return (ReadData)serializable;
     }
 
-    public static boolean isSerializedType(Object message) {
+    public static boolean isSerializedType(final Object message) {
         return message instanceof ReadData;
     }
 }
index 91d38ccd079ab7aad5ec069eb2208bcbe0c560b6..099ca228cd4c4bc5eebc046686e731da1a0fad6d 100644 (file)
@@ -5,7 +5,6 @@
  * 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.datastore.messages;
 
 import java.io.IOException;
@@ -17,17 +16,17 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 public class ReadDataReply extends VersionedExternalizableMessage {
     private static final long serialVersionUID = 1L;
 
-    private NormalizedNode<?, ?> normalizedNode;
+    private NormalizedNode normalizedNode;
 
     public ReadDataReply() {
     }
 
-    public ReadDataReply(final NormalizedNode<?, ?> normalizedNode, final short version) {
+    public ReadDataReply(final NormalizedNode normalizedNode, final short version) {
         super(version);
         this.normalizedNode = normalizedNode;
     }
 
-    public NormalizedNode<?, ?> getNormalizedNode() {
+    public NormalizedNode getNormalizedNode() {
         return normalizedNode;
     }
 
index 96ae3820e75d4b7aa16c190870c57bf4808f4754..ad32ecfb69f73910b9e3baef4d4a91839bfff783 100644 (file)
@@ -8,7 +8,7 @@
 package org.opendaylight.controller.cluster.datastore.messages;
 
 import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
-import org.opendaylight.yangtools.yang.model.util.AbstractEffectiveModelContextProvider;
+import org.opendaylight.yangtools.yang.model.spi.AbstractEffectiveModelContextProvider;
 
 public class UpdateSchemaContext extends AbstractEffectiveModelContextProvider {
     public UpdateSchemaContext(final EffectiveModelContext modelContext) {
index 0dbc480e96d5e0fe72aaa092b2ccb63cf185f745..098a89521a722caaa9efc2012898727618412d70 100644 (file)
@@ -30,11 +30,11 @@ public class MergeModification extends WriteModification {
         super(version);
     }
 
-    public MergeModification(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    public MergeModification(final YangInstanceIdentifier path, final NormalizedNode data) {
         super(path, data);
     }
 
-    MergeModification(final short version, final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    MergeModification(final short version, final YangInstanceIdentifier path, final NormalizedNode data) {
         super(version, path, data);
     }
 
@@ -55,7 +55,7 @@ public class MergeModification extends WriteModification {
 
     public static MergeModification fromStream(final NormalizedNodeDataInput in, final short version,
             final ReusableStreamReceiver receiver) throws IOException {
-        final NormalizedNode<?, ?> node = in.readNormalizedNode(receiver);
+        final NormalizedNode node = in.readNormalizedNode(receiver);
         final YangInstanceIdentifier path = in.readYangInstanceIdentifier();
         return new MergeModification(version, path, node);
     }
index dde0be7af568e91d33e432ca6e2a92fabf4a243a..9e00d4b174dd1f9e28553e8561b03362303345b6 100644 (file)
@@ -26,7 +26,7 @@ import org.opendaylight.yangtools.yang.data.codec.binfmt.NormalizedNodeDataOutpu
 public class WriteModification extends AbstractModification {
     private static final long serialVersionUID = 1L;
 
-    private NormalizedNode<?, ?> data;
+    private NormalizedNode data;
 
     public WriteModification() {
         this(DataStoreVersions.CURRENT_VERSION);
@@ -36,12 +36,12 @@ public class WriteModification extends AbstractModification {
         super(version);
     }
 
-    WriteModification(final short version, final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    WriteModification(final short version, final YangInstanceIdentifier path, final NormalizedNode data) {
         super(version, path);
         this.data = data;
     }
 
-    public WriteModification(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+    public WriteModification(final YangInstanceIdentifier path, final NormalizedNode data) {
         super(path);
         this.data = data;
     }
@@ -56,7 +56,7 @@ public class WriteModification extends AbstractModification {
         transaction.write(getPath(), data);
     }
 
-    public NormalizedNode<?, ?> getData() {
+    public NormalizedNode getData() {
         return data;
     }
 
@@ -80,7 +80,7 @@ public class WriteModification extends AbstractModification {
 
     public static WriteModification fromStream(final NormalizedNodeDataInput in, final short version,
             final ReusableStreamReceiver receiver) throws IOException {
-        final NormalizedNode<?, ?> node = in.readNormalizedNode(receiver);
+        final NormalizedNode node = in.readNormalizedNode(receiver);
         final YangInstanceIdentifier path = in.readYangInstanceIdentifier();
         return new WriteModification(version, path, node);
     }
index 8ef201c314aa6a280129e1fce4b8a1a0a31cdf07..453bbbb21aab5b76ad9144abdd0531664d3c21c3 100644 (file)
@@ -41,7 +41,7 @@ abstract class AbstractDataTreeCandidateNode implements DataTreeCandidateNode {
     }
 
     @Override
-    public final Optional<NormalizedNode<?, ?>> getDataBefore() {
+    public final Optional<NormalizedNode> getDataBefore() {
         throw new UnsupportedOperationException("Before-image not available after serialization");
     }
 
@@ -53,7 +53,7 @@ abstract class AbstractDataTreeCandidateNode implements DataTreeCandidateNode {
             }
 
             @Override
-            public Optional<NormalizedNode<?, ?>> getDataAfter() {
+            public Optional<NormalizedNode> getDataAfter() {
                 throw new UnsupportedOperationException("After-image not available after serialization");
             }
 
index 5572794271f58d44fdc99a5b43cdcb44a36b7b87..0667f7c0397d367956742d4affb7b326d52ca50d 100644 (file)
@@ -7,7 +7,8 @@
  */
 package org.opendaylight.controller.cluster.datastore.persisted;
 
-import com.google.common.base.Verify;
+import static com.google.common.base.Verify.verifyNotNull;
+
 import java.io.IOException;
 import java.io.ObjectInput;
 import java.io.ObjectOutput;
@@ -56,8 +57,8 @@ abstract class AbstractVersionedShardDataTreeSnapshot extends ShardDataTreeSnaps
     }
 
     @Override
-    public final Optional<NormalizedNode<?, ?>> getRootNode() {
-        return Optional.of(Verify.verifyNotNull(rootNode(), "Snapshot %s returned non-present root node", getClass()));
+    public final Optional<NormalizedNode> getRootNode() {
+        return Optional.of(verifyNotNull(rootNode(), "Snapshot %s returned non-present root node", getClass()));
     }
 
     /**
@@ -65,7 +66,7 @@ abstract class AbstractVersionedShardDataTreeSnapshot extends ShardDataTreeSnaps
      *
      * @return The root node.
      */
-    abstract @NonNull NormalizedNode<?, ?> rootNode();
+    abstract @NonNull NormalizedNode rootNode();
 
     /**
      * Return the snapshot payload version. Implementations of this method should return a constant.
index 29a328730aab031d8355dcee142746808f9411d1..5337530ece249128e078b7a88fa4a0b071c7cb1b 100644 (file)
@@ -32,7 +32,7 @@ import org.opendaylight.controller.cluster.datastore.persisted.DataTreeCandidate
 import org.opendaylight.controller.cluster.io.ChunkedByteArray;
 import org.opendaylight.controller.cluster.io.ChunkedOutputStream;
 import org.opendaylight.controller.cluster.raft.protobuff.client.messages.IdentifiablePayload;
-import org.opendaylight.yangtools.concepts.Variant;
+import org.opendaylight.yangtools.concepts.Either;
 import org.opendaylight.yangtools.yang.data.api.schema.stream.ReusableStreamReceiver;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate;
 import org.opendaylight.yangtools.yang.data.impl.schema.ReusableImmutableNormalizedNodeStreamWriter;
@@ -69,7 +69,7 @@ public abstract class CommitTransactionPayload extends IdentifiablePayload<Trans
             DataTreeCandidateInputOutput.writeDataTreeCandidate(dos, version, candidate);
         }
 
-        final Variant<byte[], ChunkedByteArray> source = cos.toVariant();
+        final Either<byte[], ChunkedByteArray> source = cos.toVariant();
         LOG.debug("Initial buffer capacity {}, actual serialized size {}", initialSerializedBufferCapacity, cos.size());
         return source.isFirst() ? new Simple(source.getFirst()) : new Chunked(source.getSecond());
     }
index ae881120958eddc82c25c28d12fd4d9de2e9fdb1..de386f1757fa5bf16741c6609b215d38b3ce9873 100644 (file)
@@ -41,7 +41,7 @@ abstract class DeletedDataTreeCandidateNode extends AbstractDataTreeCandidateNod
     }
 
     @Override
-    public final Optional<NormalizedNode<?, ?>> getDataAfter() {
+    public final Optional<NormalizedNode> getDataAfter() {
         return Optional.empty();
     }
 
index d21e1987d4582bf52fcc225498259b2046867a4f..a97f8f46f377f5fd1b8bbd6e05013bb5f5dc243e 100644 (file)
@@ -43,7 +43,7 @@ public final class MetadataShardDataTreeSnapshot extends AbstractVersionedShardD
 
         private Map<Class<? extends ShardDataTreeSnapshotMetadata<?>>, ShardDataTreeSnapshotMetadata<?>> metadata;
         private NormalizedNodeStreamVersion version;
-        private NormalizedNode<?, ?> rootNode;
+        private NormalizedNode rootNode;
 
         // checkstyle flags the public modifier as redundant which really doesn't make sense since it clearly isn't
         // redundant. It is explicitly needed for Java serialization to be able to create instances via reflection.
@@ -111,13 +111,13 @@ public final class MetadataShardDataTreeSnapshot extends AbstractVersionedShardD
     private final Map<Class<? extends ShardDataTreeSnapshotMetadata<?>>, ShardDataTreeSnapshotMetadata<?>> metadata;
 
     @SuppressFBWarnings(value = "SE_BAD_FIELD", justification = "See above justification.")
-    private final NormalizedNode<?, ?> rootNode;
+    private final NormalizedNode rootNode;
 
-    public MetadataShardDataTreeSnapshot(final NormalizedNode<?, ?> rootNode) {
+    public MetadataShardDataTreeSnapshot(final NormalizedNode rootNode) {
         this(rootNode, ImmutableMap.of());
     }
 
-    public MetadataShardDataTreeSnapshot(final NormalizedNode<?, ?> rootNode,
+    public MetadataShardDataTreeSnapshot(final NormalizedNode rootNode,
             final Map<Class<? extends ShardDataTreeSnapshotMetadata<?>>, ShardDataTreeSnapshotMetadata<?>> metadata) {
         this.rootNode = requireNonNull(rootNode);
         this.metadata = ImmutableMap.copyOf(metadata);
@@ -128,7 +128,7 @@ public final class MetadataShardDataTreeSnapshot extends AbstractVersionedShardD
     }
 
     @Override
-    NormalizedNode<?, ?> rootNode() {
+    NormalizedNode rootNode() {
         return rootNode;
     }
 
index 2cede0db5ec61853a22860a99eee9ee023be014c..061d9134294d9f98dd062db6b12b5547de3fbb43 100644 (file)
@@ -49,7 +49,7 @@ abstract class ModifiedDataTreeCandidateNode extends AbstractDataTreeCandidateNo
     }
 
     @Override
-    public final Optional<NormalizedNode<?, ?>> getDataAfter() {
+    public final Optional<NormalizedNode> getDataAfter() {
         throw new UnsupportedOperationException("After-image not available after serialization");
     }
 
index 9c1622bb1bd64ce6dee60520800315b29a9e2d85..7ae9fa288679601f2c17c8708f668808fdfd8ab4 100644 (file)
@@ -43,7 +43,7 @@ public abstract class ShardDataTreeSnapshot {
      *
      * @return An optional root node.
      */
-    public abstract Optional<NormalizedNode<?, ?>> getRootNode();
+    public abstract Optional<NormalizedNode> getRootNode();
 
     public abstract void serialize(ObjectOutput out) throws IOException;
 }
index 7b574530ee490824cf4f3a10343eea367cef6ef1..5891c4f7616af75ffc93556aa4f7e8cdf1d9d7d1 100644 (file)
@@ -58,7 +58,7 @@ public class ShardStrategyFactory {
             return UNKNOWN_MODULE_NAME;
         }
 
-        String namespace = path.getPathArguments().get(0).getNodeType().getNamespace().toASCIIString();
+        String namespace = path.getPathArguments().get(0).getNodeType().getNamespace().toString();
         String moduleName = configuration.getModuleNameFromNameSpace(namespace);
         return moduleName != null ? moduleName : UNKNOWN_MODULE_NAME;
     }
index d859f6790531d80f3375fe674964b5517019c22d..ae0938e600859af95c31d2d34a7db7f3abcb6583 100644 (file)
@@ -21,7 +21,6 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
  * @author Thomas Pantelis
  */
 public abstract class AbstractBatchedModificationsCursor extends AbstractDataTreeModificationCursor {
-
     protected abstract BatchedModifications getModifications();
 
     @Override
@@ -30,12 +29,12 @@ public abstract class AbstractBatchedModificationsCursor extends AbstractDataTre
     }
 
     @Override
-    public final void merge(final PathArgument child, final NormalizedNode<?, ?> data) {
+    public final void merge(final PathArgument child, final NormalizedNode data) {
         getModifications().addModification(new MergeModification(current().node(child), data));
     }
 
     @Override
-    public final void write(final PathArgument child, final NormalizedNode<?, ?> data) {
+    public final void write(final PathArgument child, final NormalizedNode data) {
         getModifications().addModification(new WriteModification(current().node(child), data));
     }
 }
index 9dc308e209573a073a656c6f00fa0739746913e6..c298371044182d60758a1cb6c17073b474158b9c 100644 (file)
@@ -59,16 +59,16 @@ public final class DataTreeModificationOutput {
         }
 
         @Override
-        public void merge(final PathArgument child, final NormalizedNode<?, ?> data) {
+        public void merge(final PathArgument child, final NormalizedNode data) {
             outputPathAndNode("MERGE", child, data);
         }
 
         @Override
-        public void write(final PathArgument child, final NormalizedNode<?, ?> data) {
+        public void write(final PathArgument child, final NormalizedNode data) {
             outputPathAndNode("WRITE", child, data);
         }
 
-        private void outputPathAndNode(final String name, final PathArgument child, final NormalizedNode<?, ?> data) {
+        private void outputPathAndNode(final String name, final PathArgument child, final NormalizedNode data) {
             try {
                 output.writeByte('\n');
                 output.write(name.getBytes(StandardCharsets.UTF_8));
index 0d2f65b9780118d7954bc1cbcf07e5542b9aef0b..a78e36c811e93dc6e9f76352686170a0ed7fc8a3 100644 (file)
@@ -22,11 +22,11 @@ import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
 
 public final class NormalizedNodeAggregator {
     private final YangInstanceIdentifier rootIdentifier;
-    private final List<Optional<NormalizedNode<?, ?>>> nodes;
+    private final List<Optional<NormalizedNode>> nodes;
     private final DataTree dataTree;
 
     private NormalizedNodeAggregator(final YangInstanceIdentifier rootIdentifier,
-            final List<Optional<NormalizedNode<?, ?>>> nodes, final EffectiveModelContext schemaContext,
+            final List<Optional<NormalizedNode>> nodes, final EffectiveModelContext schemaContext,
             final LogicalDatastoreType logicalDatastoreType) {
         this.rootIdentifier = rootIdentifier;
         this.nodes = nodes;
@@ -39,20 +39,20 @@ public final class NormalizedNodeAggregator {
     /**
      * Combine data from all the nodes in the list into a tree with root as rootIdentifier.
      */
-    public static Optional<NormalizedNode<?,?>> aggregate(final YangInstanceIdentifier rootIdentifier,
-            final List<Optional<NormalizedNode<?, ?>>> nodes, final EffectiveModelContext schemaContext,
+    public static Optional<NormalizedNode> aggregate(final YangInstanceIdentifier rootIdentifier,
+            final List<Optional<NormalizedNode>> nodes, final EffectiveModelContext schemaContext,
             final LogicalDatastoreType logicalDatastoreType) throws DataValidationFailedException {
         return new NormalizedNodeAggregator(rootIdentifier, nodes, schemaContext, logicalDatastoreType).aggregate();
     }
 
-    private Optional<NormalizedNode<?,?>> aggregate() throws DataValidationFailedException {
+    private Optional<NormalizedNode> aggregate() throws DataValidationFailedException {
         return combine().getRootNode();
     }
 
     private NormalizedNodeAggregator combine() throws DataValidationFailedException {
         final DataTreeModification mod = dataTree.takeSnapshot().newModification();
 
-        for (final Optional<NormalizedNode<?,?>> node : nodes) {
+        for (final Optional<NormalizedNode> node : nodes) {
             if (node.isPresent()) {
                 mod.merge(rootIdentifier, node.get());
             }
@@ -65,7 +65,7 @@ public final class NormalizedNodeAggregator {
         return this;
     }
 
-    private Optional<NormalizedNode<?, ?>> getRootNode() {
+    private Optional<NormalizedNode> getRootNode() {
         return dataTree.takeSnapshot().readNode(rootIdentifier);
     }
 }
index 49a0f47a4145df163465cb6bc475e091dc45172d..643d107865ab552f80261a77a81d0a8f1b889e60 100644 (file)
@@ -40,7 +40,7 @@ public final class NormalizedNodeXMLOutput {
     private NormalizedNodeXMLOutput() {
     }
 
-    public static void toStream(OutputStream outStream, NormalizedNode<?, ?> node)
+    public static void toStream(final OutputStream outStream, final NormalizedNode node)
             throws XMLStreamException, IOException {
         XMLStreamWriter xmlWriter = XOF.createXMLStreamWriter(outStream);
 
@@ -53,7 +53,7 @@ public final class NormalizedNodeXMLOutput {
         }
     }
 
-    public static void toFile(File file, NormalizedNode<?, ?> node) {
+    public static void toFile(final File file, final NormalizedNode node) {
         try (FileOutputStream outStream = new FileOutputStream(file)) {
             toStream(outStream, node);
         } catch (IOException | XMLStreamException e) {
index f156c2fe9f24d0dcd587b68068a893387fead14c..06f3a0557ad47bd5e4c8f1e2d70c6af6734f5509 100644 (file)
@@ -43,12 +43,12 @@ public abstract class PruningDataTreeModification extends ForwardingObject imple
         }
 
         @Override
-        public void merge(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+        public void merge(final YangInstanceIdentifier path, final NormalizedNode data) {
             pruneAndMergeNode(path, data);
         }
 
         @Override
-        public void write(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+        public void write(final YangInstanceIdentifier path, final NormalizedNode data) {
             pruneAndWriteNode(path, data);
         }
 
@@ -71,7 +71,7 @@ public abstract class PruningDataTreeModification extends ForwardingObject imple
         }
 
         @Override
-        public void merge(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+        public void merge(final YangInstanceIdentifier path, final NormalizedNode data) {
             if (path.isEmpty()) {
                 pruneAndMergeNode(path, data);
                 return;
@@ -86,7 +86,7 @@ public abstract class PruningDataTreeModification extends ForwardingObject imple
         }
 
         @Override
-        public void write(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
+        public void write(final YangInstanceIdentifier path, final NormalizedNode data) {
             if (path.isEmpty()) {
                 pruneAndWriteNode(path, data);
                 return;
@@ -140,15 +140,15 @@ public abstract class PruningDataTreeModification extends ForwardingObject imple
         }
     }
 
-    final void pruneAndMergeNode(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
-        final NormalizedNode<?, ?> pruned = pruneNormalizedNode(path, data);
+    final void pruneAndMergeNode(final YangInstanceIdentifier path, final NormalizedNode data) {
+        final NormalizedNode pruned = pruneNormalizedNode(path, data);
         if (pruned != null) {
             delegate.merge(path, pruned);
         }
     }
 
-    final void pruneAndWriteNode(final YangInstanceIdentifier path, final NormalizedNode<?, ?> data) {
-        final NormalizedNode<?, ?> pruned = pruneNormalizedNode(path, data);
+    final void pruneAndWriteNode(final YangInstanceIdentifier path, final NormalizedNode data) {
+        final NormalizedNode pruned = pruneNormalizedNode(path, data);
         if (pruned != null) {
             delegate.write(path, pruned);
         }
@@ -173,7 +173,7 @@ public abstract class PruningDataTreeModification extends ForwardingObject imple
     }
 
     @Override
-    public final Optional<NormalizedNode<?, ?>> readNode(final YangInstanceIdentifier yangInstanceIdentifier) {
+    public final Optional<NormalizedNode> readNode(final YangInstanceIdentifier yangInstanceIdentifier) {
         return delegate.readNode(yangInstanceIdentifier);
     }
 
@@ -183,8 +183,7 @@ public abstract class PruningDataTreeModification extends ForwardingObject imple
     }
 
     @VisibleForTesting
-    final NormalizedNode<?, ?> pruneNormalizedNode(final YangInstanceIdentifier path,
-            final NormalizedNode<?, ?> input) {
+    final NormalizedNode pruneNormalizedNode(final YangInstanceIdentifier path, final NormalizedNode input) {
         pruner.initializeForPath(path);
         try {
             NormalizedNodeWriter.forStreamWriter(pruner).write(input);
@@ -210,18 +209,18 @@ public abstract class PruningDataTreeModification extends ForwardingObject imple
         }
 
         @Override
-        public void write(final PathArgument child, final NormalizedNode<?, ?> data) {
+        public void write(final PathArgument child, final NormalizedNode data) {
             final YangInstanceIdentifier path = current().node(child);
-            final NormalizedNode<?, ?> prunedNode = pruningModification.pruneNormalizedNode(path, data);
+            final NormalizedNode prunedNode = pruningModification.pruneNormalizedNode(path, data);
             if (prunedNode != null) {
                 toModification.write(path, prunedNode);
             }
         }
 
         @Override
-        public void merge(final PathArgument child, final NormalizedNode<?, ?> data) {
+        public void merge(final PathArgument child, final NormalizedNode data) {
             final YangInstanceIdentifier path = current().node(child);
-            final NormalizedNode<?, ?> prunedNode = pruningModification.pruneNormalizedNode(path, data);
+            final NormalizedNode prunedNode = pruningModification.pruneNormalizedNode(path, data);
             if (prunedNode != null) {
                 toModification.merge(path, prunedNode);
             }
index 5bb61b0aef859644f3d9eac5ec5bf2dcb066f463..c56209f268059e01a2832a4bfedddfe7074b1274 100644 (file)
@@ -28,7 +28,7 @@ public class ClientBackedReadTransactionTest extends ClientBackedTransactionTest
     private ClientBackedReadTransaction object;
 
     @Mock
-    private NormalizedNode<?, ?> data;
+    private NormalizedNode data;
     @Mock
     private ClientActorContext clientContext;
     @Mock
@@ -54,8 +54,8 @@ public class ClientBackedReadTransactionTest extends ClientBackedTransactionTest
 
     @Test
     public void testRead() throws Exception {
-        final ListenableFuture<Optional<NormalizedNode<?, ?>>> result = object().read(YangInstanceIdentifier.empty());
-        final Optional<NormalizedNode<?, ?>> resultData = result.get();
+        final ListenableFuture<Optional<NormalizedNode>> result = object().read(YangInstanceIdentifier.empty());
+        final Optional<NormalizedNode> resultData = result.get();
         assertTrue(resultData.isPresent());
         assertEquals(data, resultData.get());
     }
index d651d089fb24d4119660c9f360c21694f56601fa..1d29ed1b801c603dde70a7ec58db8bf90a088a44 100644 (file)
@@ -31,7 +31,7 @@ public class ClientBackedReadWriteTransactionTest
     @Mock
     private ClientTransaction delegate;
     @Mock
-    private NormalizedNode<?, ?> data;
+    private NormalizedNode data;
     @Mock
     private DOMStoreThreePhaseCommitCohort readyCohort;
 
@@ -55,8 +55,8 @@ public class ClientBackedReadWriteTransactionTest
 
     @Test
     public void testRead() throws Exception {
-        final FluentFuture<Optional<NormalizedNode<?, ?>>> result = object().read(YangInstanceIdentifier.empty());
-        final Optional<NormalizedNode<?, ?>> resultData = result.get();
+        final FluentFuture<Optional<NormalizedNode>> result = object().read(YangInstanceIdentifier.empty());
+        final Optional<NormalizedNode> resultData = result.get();
         assertTrue(resultData.isPresent());
         assertEquals(data, resultData.get());
     }
index 4a6ee3f944b63b869d8e3d136129da799c4b5e43..75b36602e79b59e59c01831d79ddf1e6cfa5ad0a 100644 (file)
@@ -24,7 +24,7 @@ public class ClientBackedWriteTransactionTest extends ClientBackedTransactionTes
     @Mock
     private ClientTransaction delegate;
     @Mock
-    private NormalizedNode<?, ?> data;
+    private NormalizedNode data;
     @Mock
     private YangInstanceIdentifier path;
     @Mock
index 390dc7019d910ff9a8c7c38274c931b233a3d0b5..9e8c33254418ad04d9799980a833ad83ac1a4297 100644 (file)
@@ -50,9 +50,8 @@ public class ClientSnapshotTest extends AbstractClientHandleTest<ClientSnapshot>
 
     @Test
     public void testRead() throws Exception {
-        final ListenableFuture<Optional<NormalizedNode<?, ?>>> exists = getHandle().read(PATH);
+        final ListenableFuture<Optional<NormalizedNode>> exists = getHandle().read(PATH);
         verify(getDataTreeSnapshot()).readNode(PATH);
         assertFalse(getWithTimeout(exists).isPresent());
     }
-
 }
index 486c07c8a85c3ee145f232e03667de67d06e0ec2..69494f30fffc6104fdca36975ede82ca23dc4ed0 100644 (file)
@@ -26,6 +26,7 @@ import org.opendaylight.controller.cluster.access.commands.TransactionCommitSucc
 import org.opendaylight.mdsal.dom.spi.store.DOMStoreThreePhaseCommitCohort;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
+import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.CursorAwareDataTreeModification;
 import org.opendaylight.yangtools.yang.data.impl.schema.Builders;
@@ -35,7 +36,7 @@ public class ClientTransactionTest extends AbstractClientHandleTest<ClientTransa
     private static final YangInstanceIdentifier PATH = YangInstanceIdentifier.builder()
             .node(QName.create("ns-1", "node-1"))
             .build();
-    private static final NormalizedNode<?, ?> DATA = Builders.containerBuilder()
+    private static final ContainerNode DATA = Builders.containerBuilder()
             .withNodeIdentifier(YangInstanceIdentifier.NodeIdentifier.create(PATH.getLastPathArgument().getNodeType()))
             .build();
 
@@ -69,9 +70,9 @@ public class ClientTransactionTest extends AbstractClientHandleTest<ClientTransa
 
     @Test
     public void testRead() throws Exception {
-        final FluentFuture<Optional<NormalizedNode<?, ?>>> resultFuture = getHandle().read(PATH);
+        final FluentFuture<Optional<NormalizedNode>> resultFuture = getHandle().read(PATH);
         verify(modification).readNode(PATH);
-        final Optional<NormalizedNode<?, ?>> result = getWithTimeout(resultFuture);
+        final Optional<NormalizedNode> result = getWithTimeout(resultFuture);
         assertTrue(result.isPresent());
         assertEquals(DATA, result.get());
     }
index 497622f631c2cded20a85d3059acd2f919b1dfcd..6afecf36b8e300da316b871b750249302e0e5b8f 100644 (file)
@@ -66,9 +66,9 @@ public class RemoteProxyTransactionTest extends AbstractProxyTransactionTest<Rem
     @Test
     public void testRead() throws Exception {
         final TransactionTester<RemoteProxyTransaction> tester = getTester();
-        final FluentFuture<Optional<NormalizedNode<?, ?>>> read = transaction.read(PATH_2);
+        final FluentFuture<Optional<NormalizedNode>> read = transaction.read(PATH_2);
         final ReadTransactionRequest req = tester.expectTransactionRequest(ReadTransactionRequest.class);
-        final Optional<NormalizedNode<?, ?>> result = Optional.of(DATA_1);
+        final Optional<NormalizedNode> result = Optional.of(DATA_1);
         tester.replySuccess(new ReadTransactionSuccess(TRANSACTION_ID, req.getSequence(), result));
         assertFutureEquals(result, read);
     }
index cbe494f06c91f5a20fcf155bf8fc13cc7cc0ddc4..f7fbb051daab12e39ef47a9c5bda3247c5c77244 100644 (file)
@@ -154,7 +154,7 @@ public abstract class AbstractDistributedDataStoreIntegrationTest {
             // Verify the data in the store
             final DOMStoreReadTransaction readTx = dataStore.newReadOnlyTransaction();
 
-            Optional<NormalizedNode<?, ?>> optional = readTx.read(carPath).get(5, TimeUnit.SECONDS);
+            Optional<NormalizedNode> optional = readTx.read(carPath).get(5, TimeUnit.SECONDS);
             assertTrue("isPresent", optional.isPresent());
             assertEquals("Data node", car, optional.get());
 
@@ -176,14 +176,14 @@ public abstract class AbstractDistributedDataStoreIntegrationTest {
 
             // 2. Write some data
             final YangInstanceIdentifier nodePath = TestModel.TEST_PATH;
-            final NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            final NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
             readWriteTx.write(nodePath, nodeToWrite);
 
             // 3. Read the data from Tx
             final Boolean exists = readWriteTx.exists(nodePath).get(5, TimeUnit.SECONDS);
             assertEquals("exists", Boolean.TRUE, exists);
 
-            Optional<NormalizedNode<?, ?>> optional = readWriteTx.read(nodePath).get(5, TimeUnit.SECONDS);
+            Optional<NormalizedNode> optional = readWriteTx.read(nodePath).get(5, TimeUnit.SECONDS);
             assertTrue("isPresent", optional.isPresent());
             assertEquals("Data node", nodeToWrite, optional.get());
 
@@ -236,7 +236,7 @@ public abstract class AbstractDistributedDataStoreIntegrationTest {
             final Boolean exists = readWriteTx.exists(carPath).get(5, TimeUnit.SECONDS);
             assertEquals("exists", Boolean.TRUE, exists);
 
-            Optional<NormalizedNode<?, ?>> optional = readWriteTx.read(carPath).get(5, TimeUnit.SECONDS);
+            Optional<NormalizedNode> optional = readWriteTx.read(carPath).get(5, TimeUnit.SECONDS);
             assertTrue("isPresent", optional.isPresent());
             assertEquals("Data node", car, optional.get());
 
@@ -304,10 +304,10 @@ public abstract class AbstractDistributedDataStoreIntegrationTest {
                 assertTrue(frontendMetadata.getClients().get(0).getCurrentHistories().isEmpty());
             }
 
-            final Optional<NormalizedNode<?, ?>> optional = txChain.newReadOnlyTransaction()
+            final Optional<NormalizedNode> optional = txChain.newReadOnlyTransaction()
                     .read(CarsModel.CAR_LIST_PATH).get(5, TimeUnit.SECONDS);
             assertTrue("isPresent", optional.isPresent());
-            assertEquals("# cars", numCars, ((Collection<?>) optional.get().getValue()).size());
+            assertEquals("# cars", numCars, ((Collection<?>) optional.get().body()).size());
         }
     }
 
@@ -445,7 +445,7 @@ public abstract class AbstractDistributedDataStoreIntegrationTest {
             assertNotNull("newWriteOnlyTransaction returned null", writeTx);
 
             // 2. Write some data
-            final NormalizedNode<?, ?> testNode = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            final NormalizedNode testNode = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
             writeTx.write(TestModel.TEST_PATH, testNode);
 
             // 3. Ready the Tx for commit
@@ -471,7 +471,7 @@ public abstract class AbstractDistributedDataStoreIntegrationTest {
             // the data from the first
             // Tx is visible after being readied.
             DOMStoreReadTransaction readTx = txChain.newReadOnlyTransaction();
-            Optional<NormalizedNode<?, ?>> optional = readTx.read(TestModel.TEST_PATH).get(5, TimeUnit.SECONDS);
+            Optional<NormalizedNode> optional = readTx.read(TestModel.TEST_PATH).get(5, TimeUnit.SECONDS);
             assertTrue("isPresent", optional.isPresent());
             assertEquals("Data node", testNode, optional.get());
 
@@ -544,7 +544,7 @@ public abstract class AbstractDistributedDataStoreIntegrationTest {
             final YangInstanceIdentifier personPath = PeopleModel.newPersonPath("jack");
             readWriteTx.merge(personPath, person);
 
-            Optional<NormalizedNode<?, ?>> optional = readWriteTx.read(carPath).get(5, TimeUnit.SECONDS);
+            Optional<NormalizedNode> optional = readWriteTx.read(carPath).get(5, TimeUnit.SECONDS);
             assertTrue("isPresent", optional.isPresent());
             assertEquals("Data node", car, optional.get());
 
@@ -615,10 +615,10 @@ public abstract class AbstractDistributedDataStoreIntegrationTest {
                 f.get(5, TimeUnit.SECONDS);
             }
 
-            final Optional<NormalizedNode<?, ?>> optional = txChain.newReadOnlyTransaction()
+            final Optional<NormalizedNode> optional = txChain.newReadOnlyTransaction()
                     .read(LogicalDatastoreType.CONFIGURATION, CarsModel.CAR_LIST_PATH).get(5, TimeUnit.SECONDS);
             assertTrue("isPresent", optional.isPresent());
-            assertEquals("# cars", numCars, ((Collection<?>) optional.get().getValue()).size());
+            assertEquals("# cars", numCars, ((Collection<?>) optional.get().body()).size());
 
             txChain.close();
 
@@ -640,7 +640,7 @@ public abstract class AbstractDistributedDataStoreIntegrationTest {
 
             final DOMStoreReadWriteTransaction rwTx2 = txChain.newReadWriteTransaction();
 
-            final Optional<NormalizedNode<?, ?>> optional = rwTx2.read(TestModel.TEST_PATH).get(5, TimeUnit.SECONDS);
+            final Optional<NormalizedNode> optional = rwTx2.read(TestModel.TEST_PATH).get(5, TimeUnit.SECONDS);
             assertFalse("isPresent", optional.isPresent());
 
             txChain.close();
@@ -696,10 +696,10 @@ public abstract class AbstractDistributedDataStoreIntegrationTest {
             final DOMStoreThreePhaseCommitCohort cohort1 = writeTx.ready();
 
             // Create read-only tx's and issue a read.
-            FluentFuture<Optional<NormalizedNode<?, ?>>> readFuture1 = txChain
+            FluentFuture<Optional<NormalizedNode>> readFuture1 = txChain
                     .newReadOnlyTransaction().read(TestModel.TEST_PATH);
 
-            FluentFuture<Optional<NormalizedNode<?, ?>>> readFuture2 = txChain
+            FluentFuture<Optional<NormalizedNode>> readFuture2 = txChain
                     .newReadOnlyTransaction().read(TestModel.TEST_PATH);
 
             // Create another write tx and issue the write.
@@ -872,7 +872,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.empty());
 
         final Snapshot carsSnapshot = Snapshot.create(
             new ShardSnapshotState(new MetadataShardDataTreeSnapshot(root)),
@@ -881,7 +881,7 @@ public abstract class AbstractDistributedDataStoreIntegrationTest {
         dataTree = new InMemoryDataTreeFactory().create(DataTreeConfiguration.DEFAULT_OPERATIONAL,
             SchemaContextHelper.full());
 
-        final NormalizedNode<?, ?> peopleNode = PeopleModel.create();
+        final NormalizedNode peopleNode = PeopleModel.create();
         AbstractShardTest.writeToStore(dataTree, PeopleModel.BASE_PATH, peopleNode);
 
         root = AbstractShardTest.readStore(dataTree, YangInstanceIdentifier.empty());
@@ -900,7 +900,7 @@ public abstract class AbstractDistributedDataStoreIntegrationTest {
             final DOMStoreReadTransaction readTx = dataStore.newReadOnlyTransaction();
 
             // two reads
-            Optional<NormalizedNode<?, ?>> optional = readTx.read(CarsModel.BASE_PATH).get(5, TimeUnit.SECONDS);
+            Optional<NormalizedNode> optional = readTx.read(CarsModel.BASE_PATH).get(5, TimeUnit.SECONDS);
             assertTrue("isPresent", optional.isPresent());
             assertEquals("Data node", carsNode, optional.get());
 
@@ -925,7 +925,7 @@ public abstract class AbstractDistributedDataStoreIntegrationTest {
 
             ContainerNode rootNode = ImmutableContainerNodeBuilder.create()
                     .withNodeIdentifier(YangInstanceIdentifier.NodeIdentifier.create(SchemaContext.NAME))
-                    .withChild((ContainerNode) CarsModel.create())
+                    .withChild(CarsModel.create())
                     .build();
 
             testKit.testWriteTransaction(dataStore, YangInstanceIdentifier.empty(), rootNode);
index 7fe5e87860078452619f6aa4ffed27600030268d..8c6e84115287ee39fb60ad1470c7247f02c6a06b 100644 (file)
@@ -67,7 +67,6 @@ import org.opendaylight.controller.cluster.raft.utils.InMemorySnapshotStore;
 import org.opendaylight.controller.md.cluster.datastore.model.CarsModel;
 import org.opendaylight.controller.md.cluster.datastore.model.TestModel;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
-import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
 import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild;
 import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
@@ -158,18 +157,18 @@ public abstract class AbstractShardTest extends AbstractActorTest {
 
         // Verify data in the data store.
 
-        final NormalizedNode<?, ?> outerList = readStore(shard, TestModel.OUTER_LIST_PATH);
+        final NormalizedNode outerList = readStore(shard, TestModel.OUTER_LIST_PATH);
         assertNotNull(TestModel.OUTER_LIST_QNAME.getLocalName() + " not found", outerList);
         assertTrue(TestModel.OUTER_LIST_QNAME.getLocalName() + " value is not Iterable",
-                outerList.getValue() instanceof Iterable);
-        for (final Object entry: (Iterable<?>) outerList.getValue()) {
+                outerList.body() instanceof Iterable);
+        for (final Object entry: (Iterable<?>) outerList.body()) {
             assertTrue(TestModel.OUTER_LIST_QNAME.getLocalName() + " entry is not MapEntryNode",
                     entry instanceof MapEntryNode);
             final MapEntryNode mapEntry = (MapEntryNode)entry;
-            final Optional<DataContainerChild<? extends PathArgument, ?>> idLeaf =
-                    mapEntry.getChild(new YangInstanceIdentifier.NodeIdentifier(TestModel.ID_QNAME));
+            final Optional<DataContainerChild> idLeaf =
+                    mapEntry.findChildByArg(new YangInstanceIdentifier.NodeIdentifier(TestModel.ID_QNAME));
             assertTrue("Missing leaf " + TestModel.ID_QNAME.getLocalName(), idLeaf.isPresent());
-            final Object value = idLeaf.get().getValue();
+            final Object value = idLeaf.get().body();
             assertTrue("Unexpected value for leaf " + TestModel.ID_QNAME.getLocalName() + ": " + value,
                     listEntryKeys.remove(value));
         }
@@ -273,7 +272,7 @@ public abstract class AbstractShardTest extends AbstractActorTest {
     }
 
     protected static BatchedModifications prepareBatchedModifications(final TransactionIdentifier transactionID,
-            final YangInstanceIdentifier path, final NormalizedNode<?, ?> data, final boolean doCommitOnReady) {
+            final YangInstanceIdentifier path, final NormalizedNode data, final boolean doCommitOnReady) {
         final MutableCompositeModification modification = new MutableCompositeModification();
         modification.addModification(new WriteModification(path, data));
         return prepareBatchedModifications(transactionID, modification, doCommitOnReady);
@@ -281,24 +280,24 @@ public abstract class AbstractShardTest extends AbstractActorTest {
 
     protected static ForwardedReadyTransaction prepareForwardedReadyTransaction(final TestActorRef<Shard> shard,
             final TransactionIdentifier transactionID, final YangInstanceIdentifier path,
-            final NormalizedNode<?, ?> data, final boolean doCommitOnReady) {
+            final NormalizedNode data, final boolean doCommitOnReady) {
         ReadWriteShardDataTreeTransaction rwTx = shard.underlyingActor().getDataStore()
                 .newReadWriteTransaction(transactionID);
         rwTx.getSnapshot().write(path, data);
         return new ForwardedReadyTransaction(transactionID, CURRENT_VERSION, rwTx, doCommitOnReady, Optional.empty());
     }
 
-    public static NormalizedNode<?,?> readStore(final TestActorRef<? extends Shard> shard,
+    public static NormalizedNode readStore(final TestActorRef<? extends Shard> shard,
             final YangInstanceIdentifier id) {
         return shard.underlyingActor().getDataStore().readNode(id).orElse(null);
     }
 
-    public static NormalizedNode<?,?> readStore(final DataTree store, final YangInstanceIdentifier id) {
+    public static NormalizedNode readStore(final DataTree store, final YangInstanceIdentifier id) {
         return store.takeSnapshot().readNode(id).orElse(null);
     }
 
     public void writeToStore(final TestActorRef<Shard> shard, final YangInstanceIdentifier id,
-            final NormalizedNode<?,?> node) throws InterruptedException, ExecutionException {
+            final NormalizedNode node) throws InterruptedException, ExecutionException {
         Future<Object> future = Patterns.ask(shard, newBatchedModifications(nextTransactionId(),
                 id, node, true, true, 1), new Timeout(5, TimeUnit.SECONDS));
         try {
@@ -309,15 +308,15 @@ public abstract class AbstractShardTest extends AbstractActorTest {
     }
 
     public static void writeToStore(final ShardDataTree store, final YangInstanceIdentifier id,
-            final NormalizedNode<?,?> node) throws DataValidationFailedException {
+            final NormalizedNode node) throws DataValidationFailedException {
         BatchedModifications batched = newBatchedModifications(nextTransactionId(), id, node, true, true, 1);
         DataTreeModification modification = store.getDataTree().takeSnapshot().newModification();
         batched.apply(modification);
         store.notifyListeners(commitTransaction(store.getDataTree(), modification));
     }
 
-    public static void writeToStore(final DataTree store, final YangInstanceIdentifier id,
-            final NormalizedNode<?,?> node) throws DataValidationFailedException {
+    public static void writeToStore(final DataTree store, final YangInstanceIdentifier id, final NormalizedNode node)
+            throws DataValidationFailedException {
         final DataTreeModification transaction = store.takeSnapshot().newModification();
 
         transaction.write(id, node);
@@ -327,8 +326,8 @@ public abstract class AbstractShardTest extends AbstractActorTest {
         store.commit(candidate);
     }
 
-    public void mergeToStore(final ShardDataTree store, final YangInstanceIdentifier id,
-            final NormalizedNode<?,?> node) throws DataValidationFailedException {
+    public void mergeToStore(final ShardDataTree store, final YangInstanceIdentifier id, final NormalizedNode node)
+        throws DataValidationFailedException {
         final BatchedModifications batched = new BatchedModifications(nextTransactionId(), CURRENT_VERSION);
         batched.addModification(new MergeModification(id, node));
         batched.setReady();
@@ -346,7 +345,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.empty());
 
         InMemorySnapshotStore.addSnapshot(shardID.toString(), Snapshot.create(
                 new ShardSnapshotState(new MetadataShardDataTreeSnapshot(root)),
@@ -363,7 +362,7 @@ public abstract class AbstractShardTest extends AbstractActorTest {
     }
 
     static BatchedModifications newBatchedModifications(final TransactionIdentifier transactionID,
-            final YangInstanceIdentifier path, final NormalizedNode<?, ?> data, final boolean ready,
+            final YangInstanceIdentifier path, final NormalizedNode data, final boolean ready,
             final boolean doCommitOnReady, final int messagesSent) {
         final BatchedModifications batched = new BatchedModifications(transactionID, CURRENT_VERSION);
         batched.addModification(new WriteModification(path, data));
@@ -376,7 +375,7 @@ public abstract class AbstractShardTest extends AbstractActorTest {
     }
 
     static BatchedModifications newReadyBatchedModifications(final TransactionIdentifier transactionID,
-            final YangInstanceIdentifier path, final NormalizedNode<?, ?> data,
+            final YangInstanceIdentifier path, final NormalizedNode data,
             final SortedSet<String> participatingShardNames) {
         final BatchedModifications batched = new BatchedModifications(transactionID, CURRENT_VERSION);
         batched.addModification(new WriteModification(path, data));
@@ -387,18 +386,18 @@ public abstract class AbstractShardTest extends AbstractActorTest {
 
     @SuppressWarnings("unchecked")
     static void verifyOuterListEntry(final TestActorRef<Shard> shard, final Object expIDValue) {
-        final NormalizedNode<?, ?> outerList = readStore(shard, TestModel.OUTER_LIST_PATH);
+        final NormalizedNode outerList = readStore(shard, TestModel.OUTER_LIST_PATH);
         assertNotNull(TestModel.OUTER_LIST_QNAME.getLocalName() + " not found", outerList);
         assertTrue(TestModel.OUTER_LIST_QNAME.getLocalName() + " value is not Iterable",
-                outerList.getValue() instanceof Iterable);
-        final Object entry = ((Iterable<Object>)outerList.getValue()).iterator().next();
+                outerList.body() instanceof Iterable);
+        final Object entry = ((Iterable<Object>)outerList.body()).iterator().next();
         assertTrue(TestModel.OUTER_LIST_QNAME.getLocalName() + " entry is not MapEntryNode",
                 entry instanceof MapEntryNode);
         final MapEntryNode mapEntry = (MapEntryNode)entry;
-        final Optional<DataContainerChild<? extends PathArgument, ?>> idLeaf =
-                mapEntry.getChild(new YangInstanceIdentifier.NodeIdentifier(TestModel.ID_QNAME));
+        final Optional<DataContainerChild> idLeaf =
+                mapEntry.findChildByArg(new YangInstanceIdentifier.NodeIdentifier(TestModel.ID_QNAME));
         assertTrue("Missing leaf " + TestModel.ID_QNAME.getLocalName(), idLeaf.isPresent());
-        assertEquals(TestModel.ID_QNAME.getLocalName() + " value", expIDValue, idLeaf.get().getValue());
+        assertEquals(TestModel.ID_QNAME.getLocalName() + " value", expIDValue, idLeaf.get().body());
     }
 
     public static DataTreeCandidateTip mockCandidate(final String name) {
index a40739f1145f6aba1f0e348968025f95c0913bce..51435475753dbc73419f03e8dd6fb847bcba635c 100644 (file)
@@ -130,9 +130,9 @@ public abstract class AbstractTransactionProxyTest extends AbstractTest {
 
         @Override
         public String getModuleNameFromNameSpace(final String nameSpace) {
-            if (TestModel.JUNK_QNAME.getNamespace().toASCIIString().equals(nameSpace)) {
+            if (TestModel.JUNK_QNAME.getNamespace().toString().equals(nameSpace)) {
                 return TestModel.JUNK_QNAME.getLocalName();
-            } else if (CarsModel.BASE_QNAME.getNamespace().toASCIIString().equals(nameSpace)) {
+            } else if (CarsModel.BASE_QNAME.getNamespace().toString().equals(nameSpace)) {
                 return CarsModel.BASE_QNAME.getLocalName();
             }
             return null;
@@ -202,7 +202,7 @@ public abstract class AbstractTransactionProxyTest extends AbstractTest {
             final TransactionType type) {
         class CreateTransactionArgumentMatcher implements ArgumentMatcher<CreateTransaction> {
             @Override
-            public boolean matches(CreateTransaction argument) {
+            public boolean matches(final CreateTransaction argument) {
                 return argument.getTransactionId().getHistoryId().getClientId().getFrontendId().getMemberName()
                         .getName().equals(expMemberName) && argument.getTransactionType() == type.ordinal();
             }
@@ -214,7 +214,7 @@ public abstract class AbstractTransactionProxyTest extends AbstractTest {
     protected DataExists eqDataExists() {
         class DataExistsArgumentMatcher implements ArgumentMatcher<DataExists> {
             @Override
-            public boolean matches(DataExists argument) {
+            public boolean matches(final DataExists argument) {
                 return argument.getPath().equals(TestModel.TEST_PATH);
             }
         }
@@ -229,7 +229,7 @@ public abstract class AbstractTransactionProxyTest extends AbstractTest {
     protected ReadData eqReadData(final YangInstanceIdentifier path) {
         class ReadDataArgumentMatcher implements ArgumentMatcher<ReadData> {
             @Override
-            public boolean matches(ReadData argument) {
+            public boolean matches(final ReadData argument) {
                 return argument.getPath().equals(path);
             }
         }
@@ -242,7 +242,7 @@ public abstract class AbstractTransactionProxyTest extends AbstractTest {
     }
 
 
-    protected Future<ReadDataReply> readDataReply(final NormalizedNode<?, ?> data) {
+    protected Future<ReadDataReply> readDataReply(final NormalizedNode data) {
         return Futures.successful(new ReadDataReply(data, DataStoreVersions.CURRENT_VERSION));
     }
 
@@ -470,9 +470,8 @@ public abstract class AbstractTransactionProxyTest extends AbstractTest {
             while (iter.hasNext()) {
                 Object actual = iter.next();
                 if (CommitTransactionReply.isSerializedType(expReply)
-                        && CommitTransactionReply.isSerializedType(actual)) {
-                    found = true;
-                } else if (expReply instanceof ActorSelection && Objects.equals(expReply, actual)) {
+                        && CommitTransactionReply.isSerializedType(actual)
+                        || expReply instanceof ActorSelection && Objects.equals(expReply, actual)) {
                     found = true;
                 } else if (expReply instanceof Class && ((Class<?>) expReply).isInstance(actual)) {
                     found = true;
index 7068d75a70800a79a95c92ee436fdbf6c6562af7..97b5f75f8f0fc5ff9c8f3cd2c0b2149e186c4ee5 100644 (file)
@@ -308,7 +308,7 @@ public class DataTreeCohortIntegrationTest {
 
     private static void assertDataTreeCandidate(final DOMDataTreeCandidate candidate,
             final DOMDataTreeIdentifier expTreeId, final ModificationType expType,
-            final Optional<NormalizedNode<?, ?>> expDataAfter, final Optional<NormalizedNode<?, ?>> expDataBefore) {
+            final Optional<NormalizedNode> expDataAfter, final Optional<NormalizedNode> expDataBefore) {
         assertNotNull("Expected candidate for path " + expTreeId.getRootIdentifier(), candidate);
         assertEquals("rootPath", expTreeId, candidate.getRootPath());
         assertEquals("modificationType", expType, candidate.getRootNode().getModificationType());
index 5cefc8b36d76b91dc4c3731cda8be398374ddfa5..6a7b17b3162be57570d2c9428bfdf13a4d3d522e 100644 (file)
@@ -126,12 +126,11 @@ public class DatastoreSnapshotRestoreTest {
         return new ShardManagerSnapshot(Arrays.asList(shards), Collections.emptyMap());
     }
 
-    private static Snapshot newSnapshot(final YangInstanceIdentifier path, final NormalizedNode<?, ?> node)
-            throws Exception {
+    private static Snapshot newSnapshot(final YangInstanceIdentifier path, final NormalizedNode node) throws Exception {
         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.empty());
 
         return Snapshot.create(new ShardSnapshotState(new MetadataShardDataTreeSnapshot(root)),
                 Collections.<ReplicatedLogEntry>emptyList(), 2, 1, 2, 1, 1, "member-1", null);
index 9f88ae4c486ca8be65672ba2a20185faf709fb72..eb6ab931288bc66d7aba499bdc7da5161355ab7c 100644 (file)
@@ -147,7 +147,7 @@ public class DistributedDataStoreIntegrationTest extends AbstractDistributedData
             // Verify the data in the store
             final DOMStoreReadTransaction readTx = dataStore.newReadOnlyTransaction();
 
-            Optional<NormalizedNode<?, ?>> optional = readTx.read(TestModel.TEST_PATH).get(5, TimeUnit.SECONDS);
+            Optional<NormalizedNode> optional = readTx.read(TestModel.TEST_PATH).get(5, TimeUnit.SECONDS);
             assertTrue("isPresent", optional.isPresent());
 
             optional = readTx.read(TestModel.OUTER_LIST_PATH).get(5, TimeUnit.SECONDS);
@@ -192,7 +192,7 @@ public class DistributedDataStoreIntegrationTest extends AbstractDistributedData
 
             // Do some reads on the Tx on a separate thread.
             final AtomicReference<FluentFuture<Boolean>> txExistsFuture = new AtomicReference<>();
-            final AtomicReference<FluentFuture<Optional<NormalizedNode<?, ?>>>> txReadFuture = new AtomicReference<>();
+            final AtomicReference<FluentFuture<Optional<NormalizedNode>>> txReadFuture = new AtomicReference<>();
             final AtomicReference<Exception> caughtEx = new AtomicReference<>();
             final CountDownLatch txReadsDone = new CountDownLatch(1);
             final Thread txThread = new Thread(() -> {
@@ -324,7 +324,7 @@ public class DistributedDataStoreIntegrationTest extends AbstractDistributedData
             assertNotNull("newReadWriteTransaction returned null", readWriteTx);
 
             // Do a read on the Tx on a separate thread.
-            final AtomicReference<FluentFuture<Optional<NormalizedNode<?, ?>>>> txReadFuture = new AtomicReference<>();
+            final AtomicReference<FluentFuture<Optional<NormalizedNode>>> txReadFuture = new AtomicReference<>();
             final AtomicReference<Exception> caughtEx = new AtomicReference<>();
             final CountDownLatch txReadDone = new CountDownLatch(1);
             final Thread txThread = new Thread(() -> {
index 7fa19bc95f237900c3c26256865d6baea8085a01..c01949c9306b8f31d2e28b77a649de5705042365 100644 (file)
@@ -115,13 +115,13 @@ import org.opendaylight.yangtools.yang.common.Uint64;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
 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.SystemMapNode;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.CollectionNodeBuilder;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification;
 import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.CollectionNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.tree.InMemoryDataTreeFactory;
 import org.opendaylight.yangtools.yang.model.api.SchemaContext;
@@ -246,12 +246,12 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest {
 
     private static void verifyCars(final DOMStoreReadTransaction readTx, final MapEntryNode... entries)
             throws Exception {
-        final Optional<NormalizedNode<?, ?>> optional = readTx.read(CarsModel.CAR_LIST_PATH).get(5, TimeUnit.SECONDS);
+        final Optional<NormalizedNode> optional = readTx.read(CarsModel.CAR_LIST_PATH).get(5, TimeUnit.SECONDS);
         assertTrue("isPresent", optional.isPresent());
 
-        final CollectionNodeBuilder<MapEntryNode, MapNode> listBuilder = ImmutableNodes.mapNodeBuilder(
+        final CollectionNodeBuilder<MapEntryNode, SystemMapNode> listBuilder = ImmutableNodes.mapNodeBuilder(
                 CarsModel.CAR_QNAME);
-        for (final NormalizedNode<?, ?> entry: entries) {
+        for (final NormalizedNode entry: entries) {
             listBuilder.withChild((MapEntryNode) entry);
         }
 
@@ -259,8 +259,8 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest {
     }
 
     private static void verifyNode(final DOMStoreReadTransaction readTx, final YangInstanceIdentifier path,
-            final NormalizedNode<?, ?> expNode) throws Exception {
-        final Optional<NormalizedNode<?, ?>> optional = readTx.read(path).get(5, TimeUnit.SECONDS);
+            final NormalizedNode expNode) throws Exception {
+        final Optional<NormalizedNode> optional = readTx.read(path).get(5, TimeUnit.SECONDS);
         assertTrue("isPresent", optional.isPresent());
         assertEquals("Data node", expNode, optional.get());
     }
@@ -410,10 +410,10 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest {
                     }
                 });
 
-        final Optional<NormalizedNode<?, ?>> optional = txChain.newReadOnlyTransaction()
+        final Optional<NormalizedNode> optional = txChain.newReadOnlyTransaction()
                 .read(CarsModel.CAR_LIST_PATH).get(5, TimeUnit.SECONDS);
         assertTrue("isPresent", optional.isPresent());
-        assertEquals("# cars", numCars, ((Collection<?>) optional.get().getValue()).size());
+        assertEquals("# cars", numCars, ((Collection<?>) optional.get().body()).size());
     }
 
     @Test
@@ -476,10 +476,10 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest {
                     }
                 });
 
-        final Optional<NormalizedNode<?, ?>> optional = txChain.newReadOnlyTransaction()
+        final Optional<NormalizedNode> optional = txChain.newReadOnlyTransaction()
                 .read(CarsModel.CAR_LIST_PATH).get(5, TimeUnit.SECONDS);
         assertTrue("isPresent", optional.isPresent());
-        assertEquals("# cars", numCars, ((Collection<?>) optional.get().getValue()).size());
+        assertEquals("# cars", numCars, ((Collection<?>) optional.get().body()).size());
     }
 
     @Test
@@ -516,11 +516,11 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest {
         assertNotNull("newWriteOnlyTransaction returned null", writeTx);
 
         final YangInstanceIdentifier carsPath = CarsModel.BASE_PATH;
-        final NormalizedNode<?, ?> carsNode = CarsModel.emptyContainer();
+        final NormalizedNode carsNode = CarsModel.emptyContainer();
         writeTx.write(carsPath, carsNode);
 
         final YangInstanceIdentifier peoplePath = PeopleModel.BASE_PATH;
-        final NormalizedNode<?, ?> peopleNode = PeopleModel.emptyContainer();
+        final NormalizedNode peopleNode = PeopleModel.emptyContainer();
         writeTx.write(peoplePath, peopleNode);
 
         followerTestKit.doCommit(writeTx.ready());
@@ -539,11 +539,11 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest {
         assertNotNull("newReadWriteTransaction returned null", rwTx);
 
         final YangInstanceIdentifier carsPath = CarsModel.BASE_PATH;
-        final NormalizedNode<?, ?> carsNode = CarsModel.emptyContainer();
+        final NormalizedNode carsNode = CarsModel.emptyContainer();
         rwTx.write(carsPath, carsNode);
 
         final YangInstanceIdentifier peoplePath = PeopleModel.BASE_PATH;
-        final NormalizedNode<?, ?> peopleNode = PeopleModel.emptyContainer();
+        final NormalizedNode peopleNode = PeopleModel.emptyContainer();
         rwTx.write(peoplePath, peopleNode);
 
         followerTestKit.doCommit(rwTx.ready());
@@ -630,7 +630,7 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest {
         final YangInstanceIdentifier personPath = PeopleModel.newPersonPath("jack");
         readWriteTx.merge(personPath, person);
 
-        Optional<NormalizedNode<?, ?>> optional = readWriteTx.read(carPath).get(5, TimeUnit.SECONDS);
+        Optional<NormalizedNode> optional = readWriteTx.read(carPath).get(5, TimeUnit.SECONDS);
         assertTrue("isPresent", optional.isPresent());
         assertEquals("Data node", car, optional.get());
 
@@ -965,7 +965,7 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest {
         cars.add(CarsModel.newCarEntry("car" + carIndex, Uint64.valueOf(carIndex)));
         writeTx2.write(CarsModel.newCarPath("car" + carIndex), cars.getLast());
         carIndex++;
-        NormalizedNode<?, ?> people = ImmutableNodes.mapNodeBuilder(PeopleModel.PERSON_QNAME)
+        NormalizedNode people = ImmutableNodes.mapNodeBuilder(PeopleModel.PERSON_QNAME)
                 .withChild(PeopleModel.newPersonEntry("Dude")).build();
         writeTx2.write(PeopleModel.PERSON_LIST_PATH, people);
         final DOMStoreThreePhaseCommitCohort writeTx2Cohort = writeTx2.ready();
@@ -1340,7 +1340,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.empty());
         final Snapshot initialSnapshot = Snapshot.create(
                 new ShardSnapshotState(new MetadataShardDataTreeSnapshot(snapshotRoot)),
                 Collections.emptyList(), 5, 1, 5, 1, 1, null, null);
@@ -1351,7 +1351,7 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest {
 
         initDatastoresWithCars(testName);
 
-        final Optional<NormalizedNode<?, ?>> readOptional = leaderDistributedDataStore.newReadOnlyTransaction().read(
+        final Optional<NormalizedNode> readOptional = leaderDistributedDataStore.newReadOnlyTransaction().read(
                 CarsModel.BASE_PATH).get(5, TimeUnit.SECONDS);
         assertTrue("isPresent", readOptional.isPresent());
         assertEquals("Node", carsNode, readOptional.get());
@@ -1374,7 +1374,7 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest {
 
         final DOMStoreReadWriteTransaction rwTx = followerDistributedDataStore.newReadWriteTransaction();
 
-        final NormalizedNode<?, ?> carsNode = CarsModel.create();
+        final NormalizedNode carsNode = CarsModel.create();
         rwTx.write(CarsModel.BASE_PATH, carsNode);
 
         verifyNode(rwTx, CarsModel.BASE_PATH, carsNode);
@@ -1460,7 +1460,7 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest {
         leaderTestKit.waitForMembersUp("member-2");
         final ContainerNode rootNode = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(YangInstanceIdentifier.NodeIdentifier.create(SchemaContext.NAME))
-                .withChild((ContainerNode) CarsModel.create())
+                .withChild(CarsModel.create())
                 .build();
 
         leaderTestKit.testWriteTransaction(leaderDistributedDataStore, YangInstanceIdentifier.empty(), rootNode);
@@ -1512,7 +1512,7 @@ public class DistributedDataStoreRemotingIntegrationTest extends AbstractTest {
     }
 
     private static void verifySnapshot(final Snapshot actual, final Snapshot expected,
-                                       final NormalizedNode<?, ?> expRoot) {
+                                       final NormalizedNode expRoot) {
         assertEquals("Snapshot getLastAppliedTerm", expected.getLastAppliedTerm(), actual.getLastAppliedTerm());
         assertEquals("Snapshot getLastAppliedIndex", expected.getLastAppliedIndex(), actual.getLastAppliedIndex());
         assertEquals("Snapshot getLastTerm", expected.getLastTerm(), actual.getLastTerm());
index 1e7da9c587e8630224a14b81db75bf4d3cfbd593..b5b3f92f59a8a82003605b0417f44cc1faecd170 100644 (file)
@@ -44,8 +44,9 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 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.SystemMapNode;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.CollectionNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.CollectionNodeBuilder;
 
 @RunWith(Parameterized.class)
 public class DistributedDataStoreWithSegmentedJournalIntegrationTest
@@ -93,7 +94,7 @@ public class DistributedDataStoreWithSegmentedJournalIntegrationTest
     @Test
     public void testManyWritesDeletes() throws Exception {
         final IntegrationTestKit testKit = new IntegrationTestKit(getSystem(), datastoreContextBuilder);
-        CollectionNodeBuilder<MapEntryNode, MapNode> carMapBuilder = ImmutableNodes.mapNodeBuilder(CAR_QNAME);
+        CollectionNodeBuilder<MapEntryNode, SystemMapNode> carMapBuilder = ImmutableNodes.mapNodeBuilder(CAR_QNAME);
 
         try (AbstractDataStore dataStore = testKit.setupAbstractDataStore(
                 testParameter, "testManyWritesDeletes", "module-shards-cars-member-1.conf", true, "cars")) {
@@ -126,7 +127,7 @@ public class DistributedDataStoreWithSegmentedJournalIntegrationTest
                 }
             }
 
-            final Optional<NormalizedNode<?, ?>> optional = txChain.newReadOnlyTransaction()
+            final Optional<NormalizedNode> optional = txChain.newReadOnlyTransaction()
                     .read(CarsModel.CAR_LIST_PATH).get(5, TimeUnit.SECONDS);
             assertTrue("isPresent", optional.isPresent());
 
@@ -160,7 +161,7 @@ public class DistributedDataStoreWithSegmentedJournalIntegrationTest
             DOMStoreTransactionChain txChain = dataStore.createTransactionChain();
             MapNode cars = carMapBuilder.build();
 
-            final Optional<NormalizedNode<?, ?>> optional = txChain.newReadOnlyTransaction()
+            final Optional<NormalizedNode> optional = txChain.newReadOnlyTransaction()
                     .read(CarsModel.CAR_LIST_PATH).get(5, TimeUnit.SECONDS);
             assertTrue("isPresent", optional.isPresent());
             assertEquals("restored cars do not match snapshot", cars, optional.get());
index 0bf67fa45ed83235789db1b9255e3b8dccdcc797..e205950f34103dfea2bbbc3e6684301f57249ad4 100644 (file)
@@ -327,7 +327,7 @@ public class IntegrationTestKit extends ShardTestKit {
     }
 
     void testWriteTransaction(final AbstractDataStore dataStore, final YangInstanceIdentifier nodePath,
-            final NormalizedNode<?, ?> nodeToWrite) throws Exception {
+            final NormalizedNode nodeToWrite) throws Exception {
 
         // 1. Create a write-only Tx
 
@@ -350,7 +350,7 @@ public class IntegrationTestKit extends ShardTestKit {
 
         DOMStoreReadTransaction readTx = dataStore.newReadOnlyTransaction();
 
-        Optional<NormalizedNode<?, ?>> optional = readTx.read(nodePath).get(5, TimeUnit.SECONDS);
+        Optional<NormalizedNode> optional = readTx.read(nodePath).get(5, TimeUnit.SECONDS);
         assertTrue("isPresent", optional.isPresent());
         assertEquals("Data node", nodeToWrite, optional.get());
     }
index 42d8d798286def837cfafa6fe3feadc143688dd3..56713c4cf2a062bb4c845086096e751e0272ee5c 100644 (file)
@@ -63,7 +63,7 @@ public class LocalTransactionContextTest {
     @Test
     public void testWrite() {
         YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.empty();
-        NormalizedNode<?, ?> normalizedNode = mock(NormalizedNode.class);
+        NormalizedNode normalizedNode = mock(NormalizedNode.class);
         localTransactionContext.executeWrite(yangInstanceIdentifier, normalizedNode, null);
         verify(readWriteTransaction).write(yangInstanceIdentifier, normalizedNode);
     }
@@ -71,7 +71,7 @@ public class LocalTransactionContextTest {
     @Test
     public void testMerge() {
         YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.empty();
-        NormalizedNode<?, ?> normalizedNode = mock(NormalizedNode.class);
+        NormalizedNode normalizedNode = mock(NormalizedNode.class);
         localTransactionContext.executeMerge(yangInstanceIdentifier, normalizedNode, null);
         verify(readWriteTransaction).merge(yangInstanceIdentifier, normalizedNode);
     }
@@ -86,7 +86,7 @@ public class LocalTransactionContextTest {
     @Test
     public void testRead() {
         YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.empty();
-        NormalizedNode<?, ?> normalizedNode = mock(NormalizedNode.class);
+        NormalizedNode normalizedNode = mock(NormalizedNode.class);
         doReturn(FluentFutures.immediateFluentFuture(Optional.of(normalizedNode))).when(readWriteTransaction)
             .read(yangInstanceIdentifier);
         localTransactionContext.executeRead(new ReadData(yangInstanceIdentifier, DataStoreVersions.CURRENT_VERSION),
@@ -118,7 +118,7 @@ public class LocalTransactionContextTest {
     @Test
     public void testReadyWithWriteError() {
         YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.empty();
-        NormalizedNode<?, ?> normalizedNode = mock(NormalizedNode.class);
+        NormalizedNode normalizedNode = mock(NormalizedNode.class);
         RuntimeException error = new RuntimeException("mock");
         doThrow(error).when(readWriteTransaction).write(yangInstanceIdentifier, normalizedNode);
 
@@ -133,7 +133,7 @@ public class LocalTransactionContextTest {
     @Test
     public void testReadyWithMergeError() {
         YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.empty();
-        NormalizedNode<?, ?> normalizedNode = mock(NormalizedNode.class);
+        NormalizedNode normalizedNode = mock(NormalizedNode.class);
         RuntimeException error = new RuntimeException("mock");
         doThrow(error).when(readWriteTransaction).merge(yangInstanceIdentifier, normalizedNode);
 
index bd9c0a48ff3f1872d7ffea017796ac58c306eccf..8ef0f36c3ac319533a42d45d0baf745fb18cc0c5 100644 (file)
@@ -555,7 +555,7 @@ public class ShardCommitCoordinationTest extends AbstractShardTest {
 
     static void verifyInnerListEntry(TestActorRef<Shard> shard, int outerID, String innerID) {
         final YangInstanceIdentifier path = innerEntryPath(outerID, innerID);
-        final NormalizedNode<?, ?> innerListEntry = readStore(shard, path);
+        final NormalizedNode innerListEntry = readStore(shard, path);
         assertNotNull(path + " not found", innerListEntry);
     }
 }
index 6a8635b2c2744ec606bcd9bf3bffe0a2b3f29ed5..cfb0379966b4842e1640aa324e5a9cc17b851fcb 100644 (file)
@@ -138,11 +138,11 @@ public class ShardDataTreeTest extends AbstractTest {
 
         final DataTreeSnapshot snapshot1 = readOnlyShardDataTreeTransaction.getSnapshot();
 
-        final Optional<NormalizedNode<?, ?>> optional = snapshot1.readNode(CarsModel.BASE_PATH);
+        final Optional<NormalizedNode> optional = snapshot1.readNode(CarsModel.BASE_PATH);
 
         assertEquals(expectedCarsPresent, optional.isPresent());
 
-        final Optional<NormalizedNode<?, ?>> optional1 = snapshot1.readNode(PeopleModel.BASE_PATH);
+        final Optional<NormalizedNode> optional1 = snapshot1.readNode(PeopleModel.BASE_PATH);
 
         assertEquals(expectedPeoplePresent, optional1.isPresent());
     }
@@ -155,11 +155,11 @@ public class ShardDataTreeTest extends AbstractTest {
         candidates.add(addCar(shardDataTree));
         candidates.add(removeCar(shardDataTree));
 
-        final NormalizedNode<?, ?> expected = getCars(shardDataTree);
+        final NormalizedNode expected = getCars(shardDataTree);
 
         applyCandidates(shardDataTree, candidates);
 
-        final NormalizedNode<?, ?> actual = getCars(shardDataTree);
+        final NormalizedNode actual = getCars(shardDataTree);
 
         assertEquals(expected, actual);
     }
@@ -174,11 +174,11 @@ public class ShardDataTreeTest extends AbstractTest {
         candidates.add(addCar(shardDataTree));
         candidates.add(removeCar(shardDataTree));
 
-        final NormalizedNode<?, ?> expected = getCars(shardDataTree);
+        final NormalizedNode expected = getCars(shardDataTree);
 
         applyCandidates(shardDataTree, candidates);
 
-        final NormalizedNode<?, ?> actual = getCars(shardDataTree);
+        final NormalizedNode actual = getCars(shardDataTree);
 
         assertEquals(expected, actual);
     }
@@ -235,7 +235,7 @@ public class ShardDataTreeTest extends AbstractTest {
         final ShardDataTreeCohort cohort2 = newShardDataTreeCohort(snapshot ->
             snapshot.write(CarsModel.CAR_LIST_PATH, CarsModel.newCarMapNode()));
 
-        NormalizedNode<?, ?> peopleNode = PeopleModel.create();
+        NormalizedNode peopleNode = PeopleModel.create();
         final ShardDataTreeCohort cohort3 = newShardDataTreeCohort(snapshot ->
             snapshot.write(PeopleModel.BASE_PATH, peopleNode));
 
@@ -313,7 +313,7 @@ public class ShardDataTreeTest extends AbstractTest {
 
         final DataTreeSnapshot snapshot =
                 shardDataTree.newReadOnlyTransaction(nextTransactionId()).getSnapshot();
-        Optional<NormalizedNode<?, ?>> optional = snapshot.readNode(carPath);
+        Optional<NormalizedNode> optional = snapshot.readNode(carPath);
         assertTrue("Car node present", optional.isPresent());
         assertEquals("Car node", carNode, optional.get());
 
@@ -360,7 +360,7 @@ public class ShardDataTreeTest extends AbstractTest {
 
         final DataTreeSnapshot snapshot =
                 shardDataTree.newReadOnlyTransaction(nextTransactionId()).getSnapshot();
-        Optional<NormalizedNode<?, ?>> optional = snapshot.readNode(carPath);
+        Optional<NormalizedNode> optional = snapshot.readNode(carPath);
         assertTrue("Car node present", optional.isPresent());
         assertEquals("Car node", carNode, optional.get());
     }
@@ -389,7 +389,7 @@ public class ShardDataTreeTest extends AbstractTest {
         inOrder.verify(commitCallback3).onSuccess(any(UnsignedLong.class));
 
         final DataTreeSnapshot snapshot = shardDataTree.newReadOnlyTransaction(nextTransactionId()).getSnapshot();
-        Optional<NormalizedNode<?, ?>> optional = snapshot.readNode(CarsModel.BASE_PATH);
+        Optional<NormalizedNode> optional = snapshot.readNode(CarsModel.BASE_PATH);
         assertTrue("Car node present", optional.isPresent());
     }
 
@@ -445,7 +445,7 @@ public class ShardDataTreeTest extends AbstractTest {
 
         final DataTreeSnapshot snapshot =
                 shardDataTree.newReadOnlyTransaction(nextTransactionId()).getSnapshot();
-        Optional<NormalizedNode<?, ?>> optional = snapshot.readNode(carPath);
+        Optional<NormalizedNode> optional = snapshot.readNode(carPath);
         assertTrue("Car node present", optional.isPresent());
         assertEquals("Car node", carNode, optional.get());
     }
@@ -461,7 +461,7 @@ public class ShardDataTreeTest extends AbstractTest {
         final ShardDataTreeCohort cohort2 = newShardDataTreeCohort(snapshot ->
             snapshot.write(CarsModel.CAR_LIST_PATH, CarsModel.newCarMapNode()));
 
-        NormalizedNode<?, ?> peopleNode = PeopleModel.create();
+        NormalizedNode peopleNode = PeopleModel.create();
         final ShardDataTreeCohort cohort3 = newShardDataTreeCohort(snapshot ->
             snapshot.write(PeopleModel.BASE_PATH, peopleNode));
 
@@ -485,7 +485,7 @@ public class ShardDataTreeTest extends AbstractTest {
 
         final DataTreeSnapshot snapshot =
                 shardDataTree.newReadOnlyTransaction(nextTransactionId()).getSnapshot();
-        Optional<NormalizedNode<?, ?>> optional = snapshot.readNode(PeopleModel.BASE_PATH);
+        Optional<NormalizedNode> optional = snapshot.readNode(PeopleModel.BASE_PATH);
         assertTrue("People node present", optional.isPresent());
         assertEquals("People node", peopleNode, optional.get());
     }
@@ -556,7 +556,7 @@ public class ShardDataTreeTest extends AbstractTest {
 
         // Verify uint translation
         final DataTreeSnapshot snapshot = shardDataTree.newReadOnlyTransaction(nextTransactionId()).getSnapshot();
-        final NormalizedNode<?, ?> cars = snapshot.readNode(CarsModel.CAR_LIST_PATH).get();
+        final NormalizedNode cars = snapshot.readNode(CarsModel.CAR_LIST_PATH).get();
 
         assertEquals(Builders.mapBuilder()
             .withNodeIdentifier(new NodeIdentifier(CarsModel.CAR_QNAME))
@@ -569,7 +569,7 @@ public class ShardDataTreeTest extends AbstractTest {
 
     private void assertCarsUint64() {
         final DataTreeSnapshot snapshot = shardDataTree.newReadOnlyTransaction(nextTransactionId()).getSnapshot();
-        final NormalizedNode<?, ?> cars = snapshot.readNode(CarsModel.CAR_LIST_PATH).get();
+        final NormalizedNode cars = snapshot.readNode(CarsModel.CAR_LIST_PATH).get();
 
         assertEquals(Builders.mapBuilder()
             .withNodeIdentifier(new NodeIdentifier(CarsModel.CAR_QNAME))
@@ -623,12 +623,12 @@ public class ShardDataTreeTest extends AbstractTest {
         reset(listener);
     }
 
-    private static NormalizedNode<?, ?> getCars(final ShardDataTree shardDataTree) {
+    private static NormalizedNode getCars(final ShardDataTree shardDataTree) {
         final ReadOnlyShardDataTreeTransaction readOnlyShardDataTreeTransaction =
                 shardDataTree.newReadOnlyTransaction(nextTransactionId());
         final DataTreeSnapshot snapshot1 = readOnlyShardDataTreeTransaction.getSnapshot();
 
-        final Optional<NormalizedNode<?, ?>> optional = snapshot1.readNode(CarsModel.BASE_PATH);
+        final Optional<NormalizedNode> optional = snapshot1.readNode(CarsModel.BASE_PATH);
 
         assertTrue(optional.isPresent());
 
index 029645cea16ea97970225b1824e0c3396a947ea9..31026fd79ff273626a6bf6dc0a6af6af49eef0e1 100644 (file)
@@ -100,7 +100,7 @@ public class ShardRecoveryCoordinatorTest extends AbstractTest {
         return dataTree.prepare(modification);
     }
 
-    private Optional<NormalizedNode<?,?>> readCars(final ShardDataTree shardDataTree) {
+    private Optional<NormalizedNode> readCars(final ShardDataTree shardDataTree) {
         final DataTree dataTree = shardDataTree.getDataTree();
         // FIXME: this should not be called here
         dataTree.setEffectiveModelContext(peopleSchemaContext);
@@ -108,7 +108,7 @@ public class ShardRecoveryCoordinatorTest extends AbstractTest {
         return shardDataTree.readNode(CarsModel.BASE_PATH);
     }
 
-    private Optional<NormalizedNode<?,?>> readPeople(final ShardDataTree shardDataTree) {
+    private Optional<NormalizedNode> readPeople(final ShardDataTree shardDataTree) {
         final DataTree dataTree = shardDataTree.getDataTree();
         // FIXME: this should not be called here
         dataTree.setEffectiveModelContext(peopleSchemaContext);
index 833f97a54054500e6e7d99c1a68ee88ef5bf66c2..f396eae9605dc61f8d05a4992833a704bfa1be22 100644 (file)
@@ -299,7 +299,7 @@ public class ShardTest extends AbstractShardTest {
         writeToStore(store, TestModel.TEST_PATH, container);
 
         final YangInstanceIdentifier root = YangInstanceIdentifier.empty();
-        final NormalizedNode<?,?> expected = readStore(store, root);
+        final NormalizedNode expected = readStore(store, root);
 
         final Snapshot snapshot = Snapshot.create(new ShardSnapshotState(new MetadataShardDataTreeSnapshot(expected)),
                 Collections.emptyList(), 1, 2, 3, 4, -1, null, null);
@@ -343,7 +343,7 @@ public class ShardTest extends AbstractShardTest {
         while (sw.elapsed(TimeUnit.SECONDS) <= 5) {
             Uninterruptibles.sleepUninterruptibly(75, TimeUnit.MILLISECONDS);
 
-            final NormalizedNode<?,?> actual = readStore(shard, TestModel.TEST_PATH);
+            final NormalizedNode actual = readStore(shard, TestModel.TEST_PATH);
             if (actual != null) {
                 assertEquals("Applied state", node, actual);
                 return;
@@ -748,7 +748,7 @@ public class ShardTest extends AbstractShardTest {
 
         // Verify data in the data store.
 
-        final NormalizedNode<?, ?> actualNode = readStore(shard, path);
+        final NormalizedNode actualNode = readStore(shard, path);
         assertEquals("Stored node", containerNode, actualNode);
     }
 
@@ -838,7 +838,7 @@ public class ShardTest extends AbstractShardTest {
         ShardTestKit.waitUntilLeader(shard);
 
         final TransactionIdentifier transactionID = nextTransactionId();
-        final NormalizedNode<?, ?> containerNode = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        final NormalizedNode containerNode = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
         if (readWrite) {
             shard.tell(prepareForwardedReadyTransaction(shard, transactionID, TestModel.TEST_PATH, containerNode, true),
                 testKit.getRef());
@@ -849,7 +849,7 @@ public class ShardTest extends AbstractShardTest {
 
         testKit.expectMsgClass(Duration.ofSeconds(5), CommitTransactionReply.class);
 
-        final NormalizedNode<?, ?> actualNode = readStore(shard, TestModel.TEST_PATH);
+        final NormalizedNode actualNode = readStore(shard, TestModel.TEST_PATH);
         assertEquals(TestModel.TEST_QNAME.getLocalName(), containerNode, actualNode);
     }
 
@@ -882,7 +882,7 @@ public class ShardTest extends AbstractShardTest {
 
         testKit.expectMsgClass(CommitTransactionReply.class);
 
-        final NormalizedNode<?, ?> actualNode = readStore(shard, TestModel.OUTER_LIST_PATH);
+        final NormalizedNode actualNode = readStore(shard, TestModel.OUTER_LIST_PATH);
         assertEquals(TestModel.OUTER_LIST_QNAME.getLocalName(), mergeData, actualNode);
     }
 
@@ -927,7 +927,7 @@ public class ShardTest extends AbstractShardTest {
         shard.tell(new CommitTransaction(txId, CURRENT_VERSION).toSerializable(), testKit.getRef());
         testKit.expectMsgClass(CommitTransactionReply.class);
 
-        final NormalizedNode<?, ?> actualNode = readStore(shard, TestModel.OUTER_LIST_PATH);
+        final NormalizedNode actualNode = readStore(shard, TestModel.OUTER_LIST_PATH);
         assertEquals(TestModel.OUTER_LIST_QNAME.getLocalName(), mergeData, actualNode);
     }
 
@@ -946,7 +946,7 @@ public class ShardTest extends AbstractShardTest {
         final Duration duration = Duration.ofSeconds(5);
 
         final TransactionIdentifier transactionID = nextTransactionId();
-        final NormalizedNode<?, ?> containerNode = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        final NormalizedNode containerNode = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
         shard.tell(prepareBatchedModifications(transactionID, TestModel.TEST_PATH, containerNode, false),
             testKit.getRef());
         testKit.expectMsgClass(duration, ReadyTransactionReply.class);
@@ -963,7 +963,7 @@ public class ShardTest extends AbstractShardTest {
         shard.tell(new CommitTransaction(transactionID, CURRENT_VERSION).toSerializable(), testKit.getRef());
         testKit.expectMsgClass(duration, CommitTransactionReply.class);
 
-        final NormalizedNode<?, ?> actualNode = readStore(shard, TestModel.TEST_PATH);
+        final NormalizedNode actualNode = readStore(shard, TestModel.TEST_PATH);
         assertEquals(TestModel.TEST_QNAME.getLocalName(), containerNode, actualNode);
     }
 
@@ -1291,7 +1291,7 @@ public class ShardTest extends AbstractShardTest {
         shard.tell(new CommitTransaction(transactionID, CURRENT_VERSION).toSerializable(), testKit.getRef());
         testKit.expectMsgClass(duration, CommitTransactionReply.class);
 
-        final NormalizedNode<?, ?> node = readStore(shard, TestModel.TEST_PATH);
+        final NormalizedNode node = readStore(shard, TestModel.TEST_PATH);
 
         // Since we're simulating an abort occurring during replication
         // and before finish commit,
@@ -1359,7 +1359,7 @@ public class ShardTest extends AbstractShardTest {
         shard.tell(new CommitTransaction(transactionID2, CURRENT_VERSION).toSerializable(), testKit.getRef());
         testKit.expectMsgClass(duration, CommitTransactionReply.class);
 
-        final NormalizedNode<?, ?> node = readStore(shard, listNodePath);
+        final NormalizedNode node = readStore(shard, listNodePath);
         assertNotNull(listNodePath + " not found", node);
     }
 
@@ -1519,7 +1519,7 @@ public class ShardTest extends AbstractShardTest {
 
         testKit.expectMsgClass(duration, CommitTransactionReply.class);
 
-        final NormalizedNode<?, ?> node = readStore(shard, TestModel.TEST2_PATH);
+        final NormalizedNode node = readStore(shard, TestModel.TEST2_PATH);
         assertNotNull(TestModel.TEST2_PATH + " not found", node);
     }
 
@@ -1735,7 +1735,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.empty());
 
         // Trigger creation of a snapshot by ensuring
         final RaftActorContext raftActorContext = ((TestShard) shard.underlyingActor()).getRaftActorContext();
@@ -1747,7 +1747,7 @@ public class ShardTest extends AbstractShardTest {
     }
 
     private static void awaitAndValidateSnapshot(final AtomicReference<CountDownLatch> latch,
-            final AtomicReference<Object> savedSnapshot, final NormalizedNode<?, ?> expectedRoot)
+            final AtomicReference<Object> savedSnapshot, final NormalizedNode expectedRoot)
                     throws InterruptedException {
         assertTrue("Snapshot saved", latch.get().await(5, TimeUnit.SECONDS));
 
@@ -1759,8 +1759,8 @@ public class ShardTest extends AbstractShardTest {
         savedSnapshot.set(null);
     }
 
-    private static void verifySnapshot(final Snapshot snapshot, final NormalizedNode<?, ?> expectedRoot) {
-        final NormalizedNode<?, ?> actual = ((ShardSnapshotState)snapshot.getState()).getSnapshot().getRootNode().get();
+    private static void verifySnapshot(final Snapshot snapshot, final NormalizedNode expectedRoot) {
+        final NormalizedNode actual = ((ShardSnapshotState)snapshot.getState()).getSnapshot().getRootNode().get();
         assertEquals("Root node", expectedRoot, actual);
     }
 
@@ -1778,7 +1778,7 @@ public class ShardTest extends AbstractShardTest {
         commitTransaction(store, putTransaction);
 
 
-        final NormalizedNode<?, ?> expected = readStore(store, YangInstanceIdentifier.empty());
+        final NormalizedNode expected = readStore(store, YangInstanceIdentifier.empty());
 
         final DataTreeModification writeTransaction = store.takeSnapshot().newModification();
 
@@ -1787,7 +1787,7 @@ public class ShardTest extends AbstractShardTest {
 
         commitTransaction(store, writeTransaction);
 
-        final NormalizedNode<?, ?> actual = readStore(store, YangInstanceIdentifier.empty());
+        final NormalizedNode actual = readStore(store, YangInstanceIdentifier.empty());
 
         assertEquals(expected, actual);
     }
index a59abe7dd0621c4253d9594d1e42a2939dcbbe86..5097197ff316834692a9f3a622751c975b0b2347 100644 (file)
@@ -166,12 +166,12 @@ public class ShardTransactionTest extends AbstractActorTest {
         final ActorRef transaction = newTransactionActor(RW, mockWriteTx, "testOnReceiveBatchedModifications");
 
         YangInstanceIdentifier writePath = TestModel.TEST_PATH;
-        NormalizedNode<?, ?> writeData = ImmutableContainerNodeBuilder.create()
+        NormalizedNode writeData = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TestModel.TEST_QNAME))
                 .withChild(ImmutableNodes.leafNode(TestModel.DESC_QNAME, "foo")).build();
 
         YangInstanceIdentifier mergePath = TestModel.OUTER_LIST_PATH;
-        NormalizedNode<?, ?> mergeData = ImmutableContainerNodeBuilder.create()
+        NormalizedNode mergeData = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TestModel.OUTER_LIST_QNAME))
                 .build();
 
@@ -204,7 +204,7 @@ public class ShardTransactionTest extends AbstractActorTest {
         watcher.watch(transaction);
 
         YangInstanceIdentifier writePath = TestModel.TEST_PATH;
-        NormalizedNode<?, ?> writeData = ImmutableContainerNodeBuilder.create()
+        NormalizedNode writeData = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TestModel.TEST_QNAME))
                 .withChild(ImmutableNodes.leafNode(TestModel.DESC_QNAME, "foo")).build();
 
@@ -235,7 +235,7 @@ public class ShardTransactionTest extends AbstractActorTest {
         watcher.watch(transaction);
 
         YangInstanceIdentifier writePath = TestModel.TEST_PATH;
-        NormalizedNode<?, ?> writeData = ImmutableContainerNodeBuilder.create()
+        NormalizedNode writeData = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TestModel.TEST_QNAME))
                 .withChild(ImmutableNodes.leafNode(TestModel.DESC_QNAME, "foo")).build();
 
index e4ad8fd054c8d808afaabe68836592fbf38abbd7..37cdc4a019d8444ff415fddf21b73e287512056c 100644 (file)
@@ -133,7 +133,7 @@ public class TransactionChainProxyTest extends AbstractTransactionProxyTest {
 
             DOMStoreWriteTransaction writeTx1 = txChainProxy.newWriteOnlyTransaction();
 
-            NormalizedNode<?, ?> writeNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            NormalizedNode writeNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
             writeTx1.write(TestModel.TEST_PATH, writeNode1);
 
             writeTx1.ready();
@@ -146,7 +146,7 @@ public class TransactionChainProxyTest extends AbstractTransactionProxyTest {
 
             expectBatchedModifications(txActorRef2, 1);
 
-            final NormalizedNode<?, ?> writeNode2 = ImmutableNodes.containerNode(TestModel.OUTER_LIST_QNAME);
+            final NormalizedNode writeNode2 = ImmutableNodes.containerNode(TestModel.OUTER_LIST_QNAME);
 
             final DOMStoreWriteTransaction writeTx2 = txChainProxy.newWriteOnlyTransaction();
 
@@ -201,7 +201,7 @@ public class TransactionChainProxyTest extends AbstractTransactionProxyTest {
 
             DOMStoreWriteTransaction writeTx1 = txChainProxy.newReadWriteTransaction();
 
-            NormalizedNode<?, ?> writeNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            NormalizedNode writeNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
             writeTx1.write(TestModel.TEST_PATH, writeNode1);
 
             writeTx1.ready();
@@ -215,7 +215,7 @@ public class TransactionChainProxyTest extends AbstractTransactionProxyTest {
 
             expectBatchedModifications(txActorRef2, 1);
 
-            final NormalizedNode<?, ?> writeNode2 = ImmutableNodes.containerNode(TestModel.OUTER_LIST_QNAME);
+            final NormalizedNode writeNode2 = ImmutableNodes.containerNode(TestModel.OUTER_LIST_QNAME);
 
             final DOMStoreWriteTransaction writeTx2 = txChainProxy.newReadWriteTransaction();
 
@@ -263,7 +263,7 @@ public class TransactionChainProxyTest extends AbstractTransactionProxyTest {
 
             DOMStoreWriteTransaction writeTx1 = txChainProxy.newWriteOnlyTransaction();
 
-            NormalizedNode<?, ?> writeNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            NormalizedNode writeNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
             writeTx1.write(TestModel.TEST_PATH, writeNode1);
 
             txChainProxy.newWriteOnlyTransaction();
index b375488af8d8952ec86f2060223e22adcee5a5ac..ce1d6f6948482102fdd83ea211b5428a60f0c577 100644 (file)
@@ -102,12 +102,12 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
         doReturn(readDataReply(null)).when(mockActorContext).executeOperationAsync(
                 eq(actorSelection(actorRef)), eqReadData(), any(Timeout.class));
 
-        Optional<NormalizedNode<?, ?>> readOptional = transactionProxy.read(
+        Optional<NormalizedNode> readOptional = transactionProxy.read(
                 TestModel.TEST_PATH).get(5, TimeUnit.SECONDS);
 
         assertFalse("NormalizedNode isPresent", readOptional.isPresent());
 
-        NormalizedNode<?, ?> expectedNode = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode expectedNode = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         doReturn(readDataReply(expectedNode)).when(mockActorContext).executeOperationAsync(
                 eq(actorSelection(actorRef)), eqReadData(), any(Timeout.class));
@@ -190,7 +190,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     public void testReadWithPriorRecordingOperationSuccessful() throws Exception {
         ActorRef actorRef = setupActorContextWithInitialCreateTransaction(getSystem(), READ_WRITE);
 
-        NormalizedNode<?, ?> expectedNode = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode expectedNode = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         expectBatchedModifications(actorRef, 1);
 
@@ -201,7 +201,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
 
         transactionProxy.write(TestModel.TEST_PATH, expectedNode);
 
-        Optional<NormalizedNode<?, ?>> readOptional = transactionProxy.read(
+        Optional<NormalizedNode> readOptional = transactionProxy.read(
                 TestModel.TEST_PATH).get(5, TimeUnit.SECONDS);
 
         assertTrue("NormalizedNode isPresent", readOptional.isPresent());
@@ -299,7 +299,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     public void testExistsWithPriorRecordingOperationSuccessful() throws Exception {
         ActorRef actorRef = setupActorContextWithInitialCreateTransaction(getSystem(), READ_WRITE);
 
-        NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         expectBatchedModifications(actorRef, 1);
 
@@ -333,7 +333,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
         dataStoreContextBuilder.shardBatchedModificationCount(1);
         ActorRef actorRef = setupActorContextWithInitialCreateTransaction(getSystem(), WRITE_ONLY);
 
-        NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         expectBatchedModifications(actorRef, 1);
 
@@ -360,16 +360,16 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
 
         expectBatchedModificationsReady(actorRef);
 
-        final NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        final NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         final TransactionProxy transactionProxy = new TransactionProxy(mockComponentFactory, READ_WRITE);
 
         final CountDownLatch readComplete = new CountDownLatch(1);
         final AtomicReference<Throwable> caughtEx = new AtomicReference<>();
         com.google.common.util.concurrent.Futures.addCallback(transactionProxy.read(TestModel.TEST_PATH),
-                new  FutureCallback<Optional<NormalizedNode<?, ?>>>() {
+                new  FutureCallback<Optional<NormalizedNode>>() {
                     @Override
-                    public void onSuccess(final Optional<NormalizedNode<?, ?>> result) {
+                    public void onSuccess(final Optional<NormalizedNode> result) {
                         try {
                             transactionProxy.write(TestModel.TEST_PATH, nodeToWrite);
                         } catch (Exception e) {
@@ -422,7 +422,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
         dataStoreContextBuilder.shardBatchedModificationCount(1);
         ActorRef actorRef = setupActorContextWithInitialCreateTransaction(getSystem(), WRITE_ONLY);
 
-        NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         expectBatchedModifications(actorRef, 1);
 
@@ -451,7 +451,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     public void testReadWrite() {
         ActorRef actorRef = setupActorContextWithInitialCreateTransaction(getSystem(), READ_WRITE);
 
-        final NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        final NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         doReturn(readDataReply(null)).when(mockActorContext).executeOperationAsync(
                 eq(actorSelection(actorRef)), eqReadData(), any(Timeout.class));
@@ -479,7 +479,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     public void testReadyWithReadWrite() {
         ActorRef actorRef = setupActorContextWithInitialCreateTransaction(getSystem(), READ_WRITE);
 
-        final NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        final NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         doReturn(readDataReply(null)).when(mockActorContext).executeOperationAsync(
                 eq(actorSelection(actorRef)), eqReadData(), any(Timeout.class));
@@ -594,7 +594,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
 
         ActorRef actorRef = setupActorContextWithInitialCreateTransaction(getSystem(), WRITE_ONLY);
 
-        NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         expectBatchedModificationsReady(actorRef, true);
 
@@ -620,7 +620,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
         dataStoreContextBuilder.shardBatchedModificationCount(1).writeOnlyTransactionOptimizationsEnabled(true);
         ActorRef actorRef = setupActorContextWithInitialCreateTransaction(getSystem(), WRITE_ONLY);
 
-        NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         expectBatchedModificationsReady(actorRef, true);
 
@@ -649,7 +649,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
 
         ActorRef actorRef = setupActorContextWithInitialCreateTransaction(getSystem(), WRITE_ONLY);
 
-        NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         expectFailedBatchedModifications(actorRef);
 
@@ -697,7 +697,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
 
         expectReadyLocalTransaction(shardActorRef, true);
 
-        NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
         transactionProxy.write(TestModel.TEST_PATH, nodeToWrite);
 
         DOMStoreThreePhaseCommitCohort ready = transactionProxy.ready();
@@ -728,7 +728,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
 
         expectReadyLocalTransaction(shardActorRef, true);
 
-        NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
         transactionProxy.write(TestModel.TEST_PATH, nodeToWrite);
 
         DOMStoreThreePhaseCommitCohort ready = transactionProxy.ready();
@@ -741,7 +741,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
 
         TransactionProxy transactionProxy = new TransactionProxy(mockComponentFactory, WRITE_ONLY);
 
-        NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         transactionProxy.merge(TestModel.TEST_PATH, nodeToWrite);
 
@@ -969,7 +969,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
         return dataTree;
     }
 
-    private static DataTree createDataTree(final NormalizedNode<?, ?> readResponse) {
+    private static DataTree createDataTree(final NormalizedNode readResponse) {
         DataTree dataTree = mock(DataTree.class);
         DataTreeSnapshot dataTreeSnapshot = mock(DataTreeSnapshot.class);
         DataTreeModification dataTreeModification = mock(DataTreeModification.class);
@@ -985,7 +985,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     @Test
     public void testWriteCompletionForLocalShard() {
         completeOperationLocal(transactionProxy -> {
-            NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
             transactionProxy.write(TestModel.TEST_PATH, nodeToWrite);
 
@@ -997,7 +997,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     @Test
     public void testWriteThrottlingWhenShardFound() {
         throttleOperation(transactionProxy -> {
-            NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
             expectIncompleteBatchedModifications();
 
@@ -1011,7 +1011,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     public void testWriteThrottlingWhenShardNotFound() {
         // Confirm that there is no throttling when the Shard is not found
         completeOperation(transactionProxy -> {
-            NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
             expectBatchedModifications(2);
 
@@ -1026,7 +1026,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     @Test
     public void testWriteCompletion() {
         completeOperation(transactionProxy -> {
-            NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
             expectBatchedModifications(2);
 
@@ -1039,7 +1039,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     @Test
     public void testMergeThrottlingWhenShardFound() {
         throttleOperation(transactionProxy -> {
-            NormalizedNode<?, ?> nodeToMerge = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            NormalizedNode nodeToMerge = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
             expectIncompleteBatchedModifications();
 
@@ -1052,7 +1052,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     @Test
     public void testMergeThrottlingWhenShardNotFound() {
         completeOperation(transactionProxy -> {
-            NormalizedNode<?, ?> nodeToMerge = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            NormalizedNode nodeToMerge = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
             expectBatchedModifications(2);
 
@@ -1065,7 +1065,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     @Test
     public void testMergeCompletion() {
         completeOperation(transactionProxy -> {
-            NormalizedNode<?, ?> nodeToMerge = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            NormalizedNode nodeToMerge = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
             expectBatchedModifications(2);
 
@@ -1079,7 +1079,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     @Test
     public void testMergeCompletionForLocalShard() {
         completeOperationLocal(transactionProxy -> {
-            NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
             transactionProxy.merge(TestModel.TEST_PATH, nodeToWrite);
 
@@ -1167,7 +1167,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     @Test
     public void testReadCompletion() {
         completeOperation(transactionProxy -> {
-            NormalizedNode<?, ?> nodeToRead = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            NormalizedNode nodeToRead = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
             doReturn(readDataReply(nodeToRead)).when(mockActorContext).executeOperationAsync(
                     any(ActorSelection.class), eqReadData(), any(Timeout.class));
@@ -1181,7 +1181,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
 
     @Test
     public void testReadCompletionForLocalShard() {
-        final NormalizedNode<?, ?> nodeToRead = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        final NormalizedNode nodeToRead = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
         completeOperationLocal(transactionProxy -> {
             transactionProxy.read(TestModel.TEST_PATH);
 
@@ -1242,7 +1242,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
 
     @Test
     public void testExistsCompletionForLocalShard() {
-        final NormalizedNode<?, ?> nodeToRead = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        final NormalizedNode nodeToRead = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
         completeOperationLocal(transactionProxy -> {
             transactionProxy.exists(TestModel.TEST_PATH);
 
@@ -1265,7 +1265,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     public void testReadyThrottling() {
 
         throttleOperation(transactionProxy -> {
-            NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
             expectBatchedModifications(1);
 
@@ -1278,8 +1278,8 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     @Test
     public void testReadyThrottlingWithTwoTransactionContexts() {
         throttleOperation(transactionProxy -> {
-            NormalizedNode<?, ?> nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
-            NormalizedNode<?, ?> carsNode = ImmutableNodes.containerNode(CarsModel.BASE_QNAME);
+            NormalizedNode nodeToWrite = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+            NormalizedNode carsNode = ImmutableNodes.containerNode(CarsModel.BASE_QNAME);
 
             expectBatchedModifications(2);
 
@@ -1303,22 +1303,22 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
         expectBatchedModifications(actorRef, shardBatchedModificationCount);
 
         YangInstanceIdentifier writePath1 = TestModel.TEST_PATH;
-        NormalizedNode<?, ?> writeNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode writeNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         YangInstanceIdentifier writePath2 = TestModel.OUTER_LIST_PATH;
-        NormalizedNode<?, ?> writeNode2 = ImmutableNodes.containerNode(TestModel.OUTER_LIST_QNAME);
+        NormalizedNode writeNode2 = ImmutableNodes.containerNode(TestModel.OUTER_LIST_QNAME);
 
         YangInstanceIdentifier writePath3 = TestModel.INNER_LIST_PATH;
-        NormalizedNode<?, ?> writeNode3 = ImmutableNodes.containerNode(TestModel.INNER_LIST_QNAME);
+        NormalizedNode writeNode3 = ImmutableNodes.containerNode(TestModel.INNER_LIST_QNAME);
 
         YangInstanceIdentifier mergePath1 = TestModel.TEST_PATH;
-        NormalizedNode<?, ?> mergeNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode mergeNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         YangInstanceIdentifier mergePath2 = TestModel.OUTER_LIST_PATH;
-        NormalizedNode<?, ?> mergeNode2 = ImmutableNodes.containerNode(TestModel.OUTER_LIST_QNAME);
+        NormalizedNode mergeNode2 = ImmutableNodes.containerNode(TestModel.OUTER_LIST_QNAME);
 
         YangInstanceIdentifier mergePath3 = TestModel.INNER_LIST_PATH;
-        NormalizedNode<?, ?> mergeNode3 = ImmutableNodes.containerNode(TestModel.INNER_LIST_QNAME);
+        NormalizedNode mergeNode3 = ImmutableNodes.containerNode(TestModel.INNER_LIST_QNAME);
 
         YangInstanceIdentifier deletePath1 = TestModel.TEST_PATH;
         YangInstanceIdentifier deletePath2 = TestModel.OUTER_LIST_PATH;
@@ -1379,16 +1379,16 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
         expectBatchedModifications(actorRef, shardBatchedModificationCount);
 
         final YangInstanceIdentifier writePath1 = TestModel.TEST_PATH;
-        final NormalizedNode<?, ?> writeNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        final NormalizedNode writeNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         YangInstanceIdentifier writePath2 = TestModel.OUTER_LIST_PATH;
-        NormalizedNode<?, ?> writeNode2 = ImmutableNodes.containerNode(TestModel.OUTER_LIST_QNAME);
+        NormalizedNode writeNode2 = ImmutableNodes.containerNode(TestModel.OUTER_LIST_QNAME);
 
         final YangInstanceIdentifier mergePath1 = TestModel.TEST_PATH;
-        final NormalizedNode<?, ?> mergeNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        final NormalizedNode mergeNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
         YangInstanceIdentifier mergePath2 = TestModel.INNER_LIST_PATH;
-        NormalizedNode<?, ?> mergeNode2 = ImmutableNodes.containerNode(TestModel.INNER_LIST_QNAME);
+        NormalizedNode mergeNode2 = ImmutableNodes.containerNode(TestModel.INNER_LIST_QNAME);
 
         final YangInstanceIdentifier deletePath = TestModel.OUTER_LIST_PATH;
 
@@ -1406,7 +1406,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
         transactionProxy.write(writePath1, writeNode1);
         transactionProxy.write(writePath2, writeNode2);
 
-        Optional<NormalizedNode<?, ?>> readOptional = transactionProxy.read(writePath2).get(5, TimeUnit.SECONDS);
+        Optional<NormalizedNode> readOptional = transactionProxy.read(writePath2).get(5, TimeUnit.SECONDS);
 
         assertTrue("NormalizedNode isPresent", readOptional.isPresent());
         assertEquals("Response NormalizedNode", writeNode2, readOptional.get());
@@ -1463,8 +1463,8 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
         doReturn(schemaContext).when(mockActorContext).getSchemaContext();
         doReturn(Sets.newHashSet("test", "cars")).when(configuration).getAllShardNames();
 
-        NormalizedNode<?, ?> expectedNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
-        NormalizedNode<?, ?> expectedNode2 = ImmutableNodes.containerNode(CarsModel.CARS_QNAME);
+        NormalizedNode expectedNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode expectedNode2 = ImmutableNodes.containerNode(CarsModel.CARS_QNAME);
 
         setUpReadData("test", NormalizedNodeAggregatorTest.getRootNode(expectedNode1, schemaContext));
         setUpReadData("cars", NormalizedNodeAggregatorTest.getRootNode(expectedNode2, schemaContext));
@@ -1475,19 +1475,19 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
 
         TransactionProxy transactionProxy = new TransactionProxy(mockComponentFactory, READ_ONLY);
 
-        Optional<NormalizedNode<?, ?>> readOptional = transactionProxy.read(
+        Optional<NormalizedNode> readOptional = transactionProxy.read(
                 YangInstanceIdentifier.empty()).get(5, TimeUnit.SECONDS);
 
         assertTrue("NormalizedNode isPresent", readOptional.isPresent());
 
-        NormalizedNode<?, ?> normalizedNode = readOptional.get();
+        NormalizedNode normalizedNode = readOptional.get();
 
-        assertTrue("Expect value to be a Collection", normalizedNode.getValue() instanceof Collection);
+        assertTrue("Expect value to be a Collection", normalizedNode.body() instanceof Collection);
 
         @SuppressWarnings("unchecked")
-        Collection<NormalizedNode<?,?>> collection = (Collection<NormalizedNode<?,?>>) normalizedNode.getValue();
+        Collection<NormalizedNode> collection = (Collection<NormalizedNode>) normalizedNode.body();
 
-        for (NormalizedNode<?,?> node : collection) {
+        for (NormalizedNode node : collection) {
             assertTrue("Expected " + node + " to be a ContainerNode", node instanceof ContainerNode);
         }
 
@@ -1503,7 +1503,7 @@ public class TransactionProxyTest extends AbstractTransactionProxyTest {
     }
 
 
-    private void setUpReadData(final String shardName, final NormalizedNode<?, ?> expectedNode) {
+    private void setUpReadData(final String shardName, final NormalizedNode expectedNode) {
         ActorSystem actorSystem = getSystem();
         ActorRef shardActorRef = getSystem().actorOf(Props.create(DoNothingActor.class));
 
index ae7c9b496341696c762501a47d9f86b6b3b647da..b69c6c86627b1218599fadf2bc1b50ea8107f3fa 100644 (file)
@@ -32,7 +32,7 @@ import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
 public class ShardSnapshotActorTest extends AbstractActorTest {
     private static final InputOutputStreamFactory STREAM_FACTORY = InputOutputStreamFactory.simple();
 
-    private static final NormalizedNode<?, ?> DATA = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+    private static final NormalizedNode DATA = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
 
     private static void testSerializeSnapshot(final String testName, final ShardDataTreeSnapshot snapshot,
             final boolean withInstallSnapshot) throws Exception {
@@ -40,7 +40,7 @@ public class ShardSnapshotActorTest extends AbstractActorTest {
         final ActorRef snapshotActor = getSystem().actorOf(ShardSnapshotActor.props(STREAM_FACTORY), testName);
         kit.watch(snapshotActor);
 
-        final NormalizedNode<?, ?> expectedRoot = snapshot.getRootNode().get();
+        final NormalizedNode expectedRoot = snapshot.getRootNode().get();
 
         ByteArrayOutputStream installSnapshotStream = withInstallSnapshot ? new ByteArrayOutputStream() : null;
         ShardSnapshotActor.requestSnapshot(snapshotActor, snapshot,
@@ -60,7 +60,7 @@ public class ShardSnapshotActorTest extends AbstractActorTest {
 
             assertEquals("Deserialized snapshot type", snapshot.getClass(), deserialized.getClass());
 
-            final Optional<NormalizedNode<?, ?>> maybeNode = deserialized.getRootNode();
+            final Optional<NormalizedNode> maybeNode = deserialized.getRootNode();
             assertTrue("isPresent", maybeNode.isPresent());
             assertEquals("Root node", expectedRoot, maybeNode.get());
         }
index 0eb752c3945b9a0c2a3e53a534fd16d475b9659e..c51fea8b5867917fa7d25c32a6d379ac88781ebc 100644 (file)
@@ -13,7 +13,6 @@ import static org.junit.Assert.assertNull;
 
 import com.google.common.collect.ImmutableSortedSet;
 import com.google.common.collect.Sets;
-import java.net.URI;
 import java.util.Collection;
 import java.util.Set;
 import org.junit.Assert;
@@ -22,6 +21,7 @@ import org.junit.Test;
 import org.opendaylight.controller.cluster.access.concepts.MemberName;
 import org.opendaylight.controller.cluster.datastore.shardstrategy.ModuleShardStrategy;
 import org.opendaylight.controller.cluster.datastore.shardstrategy.ShardStrategy;
+import org.opendaylight.yangtools.yang.common.XMLNamespace;
 
 public abstract class ConfigurationImplBaseTest {
     private static final MemberName MEMBER_1 = MemberName.forName("member-1");
@@ -127,7 +127,7 @@ public abstract class ConfigurationImplBaseTest {
 
     @Test
     public void testAddModuleShardConfiguration() throws Exception {
-        URI namespace = new URI("urn:opendaylight:test:oven");
+        XMLNamespace namespace = XMLNamespace.of("urn:opendaylight:test:oven");
         String moduleName = "oven";
         String shardName = "oven-shard";
         String shardStrategyName = ModuleShardStrategy.NAME;
@@ -146,7 +146,7 @@ public abstract class ConfigurationImplBaseTest {
                 ImmutableSortedSet.copyOf(configuration.getMembersFromShardName(shardName)));
         assertEquals("getShardNameForModule", shardName, configuration.getShardNameForModule(moduleName));
         assertEquals("getModuleNameFromNameSpace", moduleName,
-                configuration.getModuleNameFromNameSpace(namespace.toASCIIString()));
+                configuration.getModuleNameFromNameSpace(namespace.toString()));
         assertEquals("getAllShardNames", ImmutableSortedSet.of("people-1", "cars-1", "test-1", "default", shardName),
                 ImmutableSortedSet.copyOf(configuration.getAllShardNames()));
 
index fdfe522beda5e899db4037cae055997532c9e84a..1b13be7c8d2dcd8e8d9a5104266f88386d9b0260 100644 (file)
@@ -13,7 +13,6 @@ import static org.junit.Assert.assertNull;
 
 import com.google.common.collect.ImmutableSortedSet;
 import com.google.common.collect.Sets;
-import java.net.URI;
 import java.util.Collection;
 import java.util.Set;
 import org.junit.Assert;
@@ -22,6 +21,7 @@ import org.junit.Test;
 import org.opendaylight.controller.cluster.access.concepts.MemberName;
 import org.opendaylight.controller.cluster.datastore.shardstrategy.ModuleShardStrategy;
 import org.opendaylight.controller.cluster.datastore.shardstrategy.ShardStrategy;
+import org.opendaylight.yangtools.yang.common.XMLNamespace;
 
 public class ConfigurationImplTest {
     private static final MemberName MEMBER_1 = MemberName.forName("member-1");
@@ -125,7 +125,7 @@ public class ConfigurationImplTest {
 
     @Test
     public void testAddModuleShardConfiguration() throws Exception {
-        URI namespace = new URI("urn:opendaylight:test:oven");
+        XMLNamespace namespace = XMLNamespace.of("urn:opendaylight:test:oven");
         String moduleName = "oven";
         String shardName = "oven-shard";
         String shardStrategyName = ModuleShardStrategy.NAME;
@@ -144,7 +144,7 @@ public class ConfigurationImplTest {
                 ImmutableSortedSet.copyOf(configuration.getMembersFromShardName(shardName)));
         assertEquals("getShardNameForModule", shardName, configuration.getShardNameForModule(moduleName));
         assertEquals("getModuleNameFromNameSpace", moduleName,
-                configuration.getModuleNameFromNameSpace(namespace.toASCIIString()));
+                configuration.getModuleNameFromNameSpace(namespace.toString()));
         assertEquals("getAllShardNames", ImmutableSortedSet.of("people-1", "cars-1", "test-1", "default", shardName),
                 ImmutableSortedSet.copyOf(configuration.getAllShardNames()));
 
index 994070ce62d82873f26a772feb4dc3b3a9756ba1..9258c0ee9ce4171ded16bf7c0319516120e22556 100644 (file)
@@ -39,12 +39,12 @@ public class BatchedModificationsTest extends AbstractTest {
     @Test
     public void testSerialization() {
         YangInstanceIdentifier writePath = TestModel.TEST_PATH;
-        NormalizedNode<?, ?> writeData = ImmutableContainerNodeBuilder.create().withNodeIdentifier(
+        NormalizedNode writeData = ImmutableContainerNodeBuilder.create().withNodeIdentifier(
                 new YangInstanceIdentifier.NodeIdentifier(TestModel.TEST_QNAME))
                 .withChild(ImmutableNodes.leafNode(TestModel.DESC_QNAME, "foo")).build();
 
         YangInstanceIdentifier mergePath = TestModel.OUTER_LIST_PATH;
-        NormalizedNode<?, ?> mergeData = ImmutableContainerNodeBuilder.create().withNodeIdentifier(
+        NormalizedNode mergeData = ImmutableContainerNodeBuilder.create().withNodeIdentifier(
                 new YangInstanceIdentifier.NodeIdentifier(TestModel.OUTER_LIST_QNAME)).build();
 
         YangInstanceIdentifier deletePath = TestModel.TEST_PATH;
index caf55737be8df8e294fd8eba801edf986d0078eb..f01b09c716bf3747165792648e7735965d3fe300 100644 (file)
@@ -30,7 +30,7 @@ public class ReadDataReplyTest {
 
     @Test
     public void testSerialization() {
-        NormalizedNode<?, ?> data = ImmutableContainerNodeBuilder.create()
+        NormalizedNode data = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TestModel.TEST_QNAME))
                 .withChild(ImmutableNodes.leafNode(TestModel.DESC_QNAME, "foo")).build();
 
index 5d7d842298e419fe13d94198b9b751d080944b69..17d05f22b797a71c74291637eb8b5bea39daaff2 100644 (file)
@@ -49,9 +49,10 @@ public abstract class AbstractModificationTest {
         cohort.commit();
     }
 
-    protected Optional<NormalizedNode<?, ?>> readData(final YangInstanceIdentifier path) throws Exception {
+    protected Optional<NormalizedNode> readData(final YangInstanceIdentifier path) throws Exception {
+        // FIXME: close the transaction
         DOMStoreReadTransaction transaction = store.newReadOnlyTransaction();
-        ListenableFuture<Optional<NormalizedNode<?, ?>>> future = transaction.read(path);
+        ListenableFuture<Optional<NormalizedNode>> future = transaction.read(path);
         return future.get();
     }
 }
index ac0d7f93887b4ce1865af17f1fe7943c89323590..c483d4d411f45b154dc20b159990703ce0186bd0 100644 (file)
@@ -33,7 +33,7 @@ public class DeleteModificationTest extends AbstractModificationTest {
         commitTransaction(writeTransaction);
 
         // Check if it's in the datastore
-        Optional<NormalizedNode<?, ?>> data = readData(TestModel.TEST_PATH);
+        Optional<NormalizedNode> data = readData(TestModel.TEST_PATH);
         Assert.assertTrue(data.isPresent());
 
         // Delete stuff from the datastore
index bfdcf0edf882d55851077b0fd1cb848223c44399..5a9c88d16b80c6d95a1cf84fa866942125741113 100644 (file)
@@ -35,7 +35,7 @@ public class MergeModificationTest extends AbstractModificationTest {
         commitTransaction(writeTransaction);
 
         //Check if it's in the datastore
-        Optional<NormalizedNode<?,?>> data = readData(TestModel.TEST_PATH);
+        Optional<NormalizedNode> data = readData(TestModel.TEST_PATH);
         Assert.assertTrue(data.isPresent());
 
     }
@@ -43,7 +43,7 @@ public class MergeModificationTest extends AbstractModificationTest {
     @Test
     public void testSerialization() {
         YangInstanceIdentifier path = TestModel.TEST_PATH;
-        NormalizedNode<?, ?> data = ImmutableContainerNodeBuilder.create()
+        NormalizedNode data = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TestModel.TEST_QNAME))
                 .withChild(ImmutableNodes.leafNode(TestModel.DESC_QNAME, "foo")).build();
 
index 96438c42090d3b901137d12fbaa68fd2c36fceaa..c4fcaab0e4523d1abc60704367ef8088fd57ec83 100644 (file)
@@ -35,21 +35,21 @@ public class MutableCompositeModificationTest extends AbstractModificationTest {
         compositeModification.apply(transaction);
         commitTransaction(transaction);
 
-        Optional<NormalizedNode<?, ?>> data = readData(TestModel.TEST_PATH);
+        Optional<NormalizedNode> data = readData(TestModel.TEST_PATH);
 
         assertNotNull(data.get());
-        assertEquals(TestModel.TEST_QNAME, data.get().getNodeType());
+        assertEquals(TestModel.TEST_QNAME, data.get().getIdentifier().getNodeType());
     }
 
     @Test
     public void testSerialization() {
         YangInstanceIdentifier writePath = TestModel.TEST_PATH;
-        NormalizedNode<?, ?> writeData = ImmutableContainerNodeBuilder.create()
+        NormalizedNode writeData = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TestModel.TEST_QNAME))
                 .withChild(ImmutableNodes.leafNode(TestModel.DESC_QNAME, "foo")).build();
 
         YangInstanceIdentifier mergePath = TestModel.OUTER_LIST_PATH;
-        NormalizedNode<?, ?> mergeData = ImmutableContainerNodeBuilder.create().withNodeIdentifier(
+        NormalizedNode mergeData = ImmutableContainerNodeBuilder.create().withNodeIdentifier(
                 new YangInstanceIdentifier.NodeIdentifier(TestModel.OUTER_LIST_QNAME)).build();
 
         YangInstanceIdentifier deletePath = TestModel.TEST_PATH;
index 5218cee1b3864832f64fca287562cf8ea9f2faf1..7a68b542f4ae804bc70360720553ddfb43d95c88 100644 (file)
@@ -33,14 +33,14 @@ public class WriteModificationTest extends AbstractModificationTest {
         commitTransaction(writeTransaction);
 
         //Check if it's in the datastore
-        Optional<NormalizedNode<?,?>> data = readData(TestModel.TEST_PATH);
+        Optional<NormalizedNode> data = readData(TestModel.TEST_PATH);
         Assert.assertTrue(data.isPresent());
     }
 
     @Test
     public void testSerialization() {
         YangInstanceIdentifier path = TestModel.TEST_PATH;
-        NormalizedNode<?, ?> data = ImmutableContainerNodeBuilder.create()
+        NormalizedNode data = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TestModel.TEST_QNAME))
                 .withChild(ImmutableNodes.leafNode(TestModel.DESC_QNAME, "foo")).build();
 
index c081b89137e154b2d5d5ab3b7338b1da23b62a71..6b2156ec77030a8ad0ad568b8696c8f397ba9b15 100644 (file)
@@ -101,7 +101,7 @@ public class CommitTransactionPayloadTest extends AbstractTest {
     public void setUp() {
         setUpStatic();
         final YangInstanceIdentifier writePath = TestModel.TEST_PATH;
-        final NormalizedNode<?, ?> writeData = ImmutableContainerNodeBuilder.create()
+        final NormalizedNode writeData = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TestModel.TEST_QNAME))
                 .withChild(ImmutableNodes.leafNode(TestModel.DESC_QNAME, "foo")).build();
         candidate = DataTreeCandidates.fromNormalizedNode(writePath, writeData);
@@ -132,7 +132,7 @@ public class CommitTransactionPayloadTest extends AbstractTest {
         YangInstanceIdentifier leafSetEntryPath = YangInstanceIdentifier.builder(TestModel.TEST_PATH).node(LEAF_SET)
                 .node(entryPathArg).build();
 
-        NormalizedNode<?, ?> leafSetEntryNode = Builders.leafSetEntryBuilder().withNodeIdentifier(entryPathArg)
+        NormalizedNode leafSetEntryNode = Builders.leafSetEntryBuilder().withNodeIdentifier(entryPathArg)
                 .withValue("one").build();
 
         candidate = DataTreeCandidates.fromNormalizedNode(leafSetEntryPath, leafSetEntryNode);
@@ -148,7 +148,7 @@ public class CommitTransactionPayloadTest extends AbstractTest {
 
         LeafSetEntryNode leafSetEntryNode = Builders.leafSetEntryBuilder().withNodeIdentifier(entryPathArg)
                 .withValue("one").build();
-        NormalizedNode<?, ?> leafSetNode = Builders.leafSetBuilder().withNodeIdentifier(
+        NormalizedNode leafSetNode = Builders.leafSetBuilder().withNodeIdentifier(
                 new YangInstanceIdentifier.NodeIdentifier(LEAF_SET)).withChild(leafSetEntryNode).build();
 
         candidate = DataTreeCandidates.fromNormalizedNode(leafSetPath, leafSetNode);
@@ -164,7 +164,7 @@ public class CommitTransactionPayloadTest extends AbstractTest {
 
         LeafSetEntryNode leafSetEntryNode = Builders.leafSetEntryBuilder().withNodeIdentifier(entryPathArg)
                 .withValue("one").build();
-        NormalizedNode<?, ?> leafSetNode = Builders.orderedLeafSetBuilder().withNodeIdentifier(
+        NormalizedNode leafSetNode = Builders.orderedLeafSetBuilder().withNodeIdentifier(
                 new YangInstanceIdentifier.NodeIdentifier(LEAF_SET)).withChild(leafSetEntryNode).build();
 
         candidate = DataTreeCandidates.fromNormalizedNode(leafSetPath, leafSetNode);
index 5adf2cb6bd1a0a3da93ebdecb234c0a8f62dc56c..3051194a6f019c0ceb494713ff6c24062570f406 100644 (file)
@@ -37,7 +37,7 @@ public class ShardDataTreeSnapshotTest {
 
     @Test
     public void testShardDataTreeSnapshotWithNoMetadata() throws Exception {
-        NormalizedNode<?, ?> expectedNode = ImmutableContainerNodeBuilder.create()
+        NormalizedNode expectedNode = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TestModel.TEST_QNAME))
                 .withChild(ImmutableNodes.leafNode(TestModel.DESC_QNAME, "foo")).build();
 
@@ -55,7 +55,7 @@ public class ShardDataTreeSnapshotTest {
             deserialized = ShardDataTreeSnapshot.deserialize(in).getSnapshot();
         }
 
-        Optional<NormalizedNode<?, ?>> actualNode = deserialized.getRootNode();
+        Optional<NormalizedNode> actualNode = deserialized.getRootNode();
         assertTrue("rootNode present", actualNode.isPresent());
         assertEquals("rootNode", expectedNode, actualNode.get());
         assertEquals("Deserialized type", MetadataShardDataTreeSnapshot.class, deserialized.getClass());
@@ -64,7 +64,7 @@ public class ShardDataTreeSnapshotTest {
 
     @Test
     public void testShardDataTreeSnapshotWithMetadata() throws Exception {
-        NormalizedNode<?, ?> expectedNode = ImmutableContainerNodeBuilder.create()
+        NormalizedNode expectedNode = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TestModel.TEST_QNAME))
                 .withChild(ImmutableNodes.leafNode(TestModel.DESC_QNAME, "foo")).build();
 
@@ -84,7 +84,7 @@ public class ShardDataTreeSnapshotTest {
             deserialized = ShardDataTreeSnapshot.deserialize(in).getSnapshot();
         }
 
-        Optional<NormalizedNode<?, ?>> actualNode = deserialized.getRootNode();
+        Optional<NormalizedNode> actualNode = deserialized.getRootNode();
         assertTrue("rootNode present", actualNode.isPresent());
         assertEquals("rootNode", expectedNode, actualNode.get());
         assertEquals("Deserialized type", MetadataShardDataTreeSnapshot.class, deserialized.getClass());
index 82b9f455656080078131f574e7a1ee3644193e16..4b324ff29b53193a13e83ed36e4219a650b6642e 100644 (file)
@@ -27,7 +27,7 @@ public class ShardSnapshotStateTest {
 
     @Test
     public void testSerialization() {
-        NormalizedNode<?, ?> expectedNode = ImmutableContainerNodeBuilder.create()
+        NormalizedNode expectedNode = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TestModel.TEST_QNAME))
                 .withChild(ImmutableNodes.leafNode(TestModel.DESC_QNAME, "foo")).build();
 
index 1be0fa88df969aadb3eb0c8c07a53e7fea1ef458..4417051b0994e0c4af3de24fc4f5f1435f9256e8 100644 (file)
@@ -46,7 +46,6 @@ import com.google.common.collect.ImmutableMap;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Sets;
 import com.google.common.util.concurrent.Uninterruptibles;
-import java.net.URI;
 import java.time.Duration;
 import java.util.AbstractMap;
 import java.util.Arrays;
@@ -127,6 +126,7 @@ import org.opendaylight.controller.cluster.raft.utils.InMemorySnapshotStore;
 import org.opendaylight.controller.cluster.raft.utils.MessageCollectorActor;
 import org.opendaylight.controller.md.cluster.datastore.model.TestModel;
 import org.opendaylight.yangtools.concepts.Registration;
+import org.opendaylight.yangtools.yang.common.XMLNamespace;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree;
 import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
 import org.slf4j.Logger;
@@ -1236,7 +1236,7 @@ public class ShardManagerTest extends AbstractShardManagerTest {
                 .persistent(false).build();
         Shard.Builder shardBuilder = Shard.builder();
 
-        ModuleShardConfiguration config = new ModuleShardConfiguration(URI.create("foo-ns"), "foo-module",
+        ModuleShardConfiguration config = new ModuleShardConfiguration(XMLNamespace.of("foo-ns"), "foo-module",
             "foo", null, members("member-1", "member-5", "member-6"));
         shardManager.tell(new CreateShard(config, shardBuilder, datastoreContext), kit.getRef());
 
@@ -1281,7 +1281,7 @@ public class ShardManagerTest extends AbstractShardManagerTest {
         shardManager.tell(new UpdateSchemaContext(TEST_SCHEMA_CONTEXT), ActorRef.noSender());
 
         Shard.Builder shardBuilder = Shard.builder();
-        ModuleShardConfiguration config = new ModuleShardConfiguration(URI.create("foo-ns"), "foo-module",
+        ModuleShardConfiguration config = new ModuleShardConfiguration(XMLNamespace.of("foo-ns"), "foo-module",
             "foo", null, members("member-5", "member-6"));
 
         shardManager.tell(new CreateShard(config, shardBuilder, null), kit.getRef());
@@ -1307,7 +1307,7 @@ public class ShardManagerTest extends AbstractShardManagerTest {
 
         Shard.Builder shardBuilder = Shard.builder();
 
-        ModuleShardConfiguration config = new ModuleShardConfiguration(URI.create("foo-ns"), "foo-module",
+        ModuleShardConfiguration config = new ModuleShardConfiguration(XMLNamespace.of("foo-ns"), "foo-module",
             "foo", null, members("member-1"));
         shardManager.tell(new CreateShard(config, shardBuilder, null), kit.getRef());
 
index fecfc52fb6a57a036b009ef89502c8ed26c199a9..326313eb3b29fb7d4894db45785fa541672557e0 100644 (file)
@@ -26,8 +26,8 @@ import java.util.concurrent.atomic.AtomicInteger;
 import org.opendaylight.mdsal.dom.api.DOMDataTreeChangeListener;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
+import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
-import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodeContainer;
 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate;
 
 public class MockDataTreeChangeListener implements DOMDataTreeChangeListener {
@@ -89,24 +89,24 @@ public class MockDataTreeChangeListener implements DOMDataTreeChangeListener {
 
         for (int i = 0; i < expPaths.length; i++) {
             final DataTreeCandidate candidate = changeList.get(i);
-            final Optional<NormalizedNode<?, ?>> maybeDataAfter = candidate.getRootNode().getDataAfter();
+            final Optional<NormalizedNode> maybeDataAfter = candidate.getRootNode().getDataAfter();
             if (!maybeDataAfter.isPresent()) {
                 fail(String.format("Change %d does not contain data after. Actual: %s", i + 1,
                         candidate.getRootNode()));
             }
 
-            final NormalizedNode<?, ?> dataAfter = maybeDataAfter.get();
+            final NormalizedNode dataAfter = maybeDataAfter.get();
             final Optional<YangInstanceIdentifier> 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());
             } else {
-                NormalizedNode<?, ?> nextChild = dataAfter;
+                NormalizedNode nextChild = dataAfter;
                 for (PathArgument pathArg: relativePath.get().getPathArguments()) {
                     boolean found = false;
-                    if (nextChild instanceof NormalizedNodeContainer) {
-                        Optional<NormalizedNode<?, ?>> maybeChild = ((NormalizedNodeContainer)nextChild)
-                                .getChild(pathArg);
+                    if (nextChild instanceof DistinctNodeContainer) {
+                        Optional<NormalizedNode> maybeChild = ((DistinctNodeContainer)nextChild)
+                                .findChildByArg(pathArg);
                         if (maybeChild.isPresent()) {
                             found = true;
                             nextChild = maybeChild.get();
index cc9e9b288bbe3a6d7d362272ef738b6d7a781f26..0844f3d4f3163f185f7be7f8a00f75632ace18dd 100644 (file)
@@ -39,24 +39,24 @@ public class NormalizedNodeAggregatorTest {
     public void testAggregate() throws InterruptedException, ExecutionException,
         DataValidationFailedException {
         EffectiveModelContext schemaContext = SchemaContextHelper.full();
-        NormalizedNode<?, ?> expectedNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
-        NormalizedNode<?, ?> expectedNode2 = ImmutableNodes.containerNode(CarsModel.CARS_QNAME);
+        NormalizedNode expectedNode1 = ImmutableNodes.containerNode(TestModel.TEST_QNAME);
+        NormalizedNode expectedNode2 = ImmutableNodes.containerNode(CarsModel.CARS_QNAME);
 
-        Optional<NormalizedNode<?, ?>> optional = NormalizedNodeAggregator.aggregate(YangInstanceIdentifier.empty(),
+        Optional<NormalizedNode> optional = NormalizedNodeAggregator.aggregate(YangInstanceIdentifier.empty(),
                 ImmutableList.of(
-                        Optional.<NormalizedNode<?, ?>>of(getRootNode(expectedNode1, schemaContext)),
-                        Optional.<NormalizedNode<?, ?>>of(getRootNode(expectedNode2, schemaContext))),
+                        Optional.<NormalizedNode>of(getRootNode(expectedNode1, schemaContext)),
+                        Optional.<NormalizedNode>of(getRootNode(expectedNode2, schemaContext))),
                 schemaContext, LogicalDatastoreType.CONFIGURATION);
 
 
-        NormalizedNode<?,?> normalizedNode = optional.get();
+        NormalizedNode normalizedNode = optional.get();
 
-        assertTrue("Expect value to be a Collection", normalizedNode.getValue() instanceof Collection);
+        assertTrue("Expect value to be a Collection", normalizedNode.body() instanceof Collection);
 
         @SuppressWarnings("unchecked")
-        Collection<NormalizedNode<?,?>> collection = (Collection<NormalizedNode<?,?>>) normalizedNode.getValue();
+        Collection<NormalizedNode> collection = (Collection<NormalizedNode>) normalizedNode.body();
 
-        for (NormalizedNode<?,?> node : collection) {
+        for (NormalizedNode node : collection) {
             assertTrue("Expected " + node + " to be a ContainerNode", node instanceof ContainerNode);
         }
 
@@ -72,14 +72,14 @@ public class NormalizedNodeAggregatorTest {
 
     }
 
-    public static NormalizedNode<?, ?> getRootNode(final NormalizedNode<?, ?> moduleNode,
+    public static NormalizedNode getRootNode(final NormalizedNode moduleNode,
             final EffectiveModelContext schemaContext) throws ExecutionException, InterruptedException {
         try (InMemoryDOMDataStore store = new InMemoryDOMDataStore("test", Executors.newSingleThreadExecutor())) {
             store.onModelContextUpdated(schemaContext);
 
             DOMStoreWriteTransaction writeTransaction = store.newWriteOnlyTransaction();
 
-            writeTransaction.merge(YangInstanceIdentifier.of(moduleNode.getNodeType()), moduleNode);
+            writeTransaction.merge(YangInstanceIdentifier.of(moduleNode.getIdentifier().getNodeType()), moduleNode);
 
             DOMStoreThreePhaseCommitCohort ready = writeTransaction.ready();
 
@@ -89,18 +89,18 @@ public class NormalizedNodeAggregatorTest {
 
             DOMStoreReadTransaction readTransaction = store.newReadOnlyTransaction();
 
-            FluentFuture<Optional<NormalizedNode<?, ?>>> read = readTransaction.read(YangInstanceIdentifier.empty());
+            FluentFuture<Optional<NormalizedNode>> read = readTransaction.read(YangInstanceIdentifier.empty());
 
-            Optional<NormalizedNode<?, ?>> nodeOptional = read.get();
+            Optional<NormalizedNode> nodeOptional = read.get();
 
             return nodeOptional.get();
         }
     }
 
-    public static NormalizedNode<?,?> findChildWithQName(final Collection<NormalizedNode<?, ?>> collection,
+    public static NormalizedNode findChildWithQName(final Collection<NormalizedNode> collection,
             final QName qname) {
-        for (NormalizedNode<?, ?> node : collection) {
-            if (node.getNodeType().equals(qname)) {
+        for (NormalizedNode node : collection) {
+            if (node.getIdentifier().getNodeType().equals(qname)) {
                 return node;
             }
         }
index abcabff8e5a132524ed4a9ca9f35133604eb7f10..1f5f92c03ca0ae115b1768133adbaebe5c0c8dd2 100644 (file)
@@ -123,7 +123,7 @@ public class PruningDataTreeModificationTest {
 
     @Test
     public void testMerge() {
-        NormalizedNode<?, ?> normalizedNode = CarsModel.create();
+        NormalizedNode normalizedNode = CarsModel.create();
         YangInstanceIdentifier path = CarsModel.BASE_PATH;
         pruningDataTreeModification.merge(path, normalizedNode);
 
@@ -132,7 +132,7 @@ public class PruningDataTreeModificationTest {
 
     @Test
     public void testMergeWithInvalidNamespace() throws DataValidationFailedException {
-        NormalizedNode<?, ?> normalizedNode = PeopleModel.emptyContainer();
+        NormalizedNode normalizedNode = PeopleModel.emptyContainer();
         YangInstanceIdentifier path = PeopleModel.BASE_PATH;
 
         pruningDataTreeModification.merge(path, normalizedNode);
@@ -149,7 +149,7 @@ public class PruningDataTreeModificationTest {
                 new YangInstanceIdentifier.NodeIdentifier(AUG_CONTAINER)).withChild(
                         ImmutableNodes.containerNode(AUG_INNER_CONTAINER)).build();
 
-        DataContainerChild<?, ?> outerNode = outerNode(outerNodeEntry(1, innerNode("one", "two")));
+        DataContainerChild outerNode = outerNode(outerNodeEntry(1, innerNode("one", "two")));
         ContainerNode normalizedNode = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TEST_QNAME)).withChild(outerNode)
                 .withChild(augContainer).withChild(ImmutableNodes.leafNode(AUG_QNAME, "aug")).build();
@@ -163,14 +163,14 @@ public class PruningDataTreeModificationTest {
         ContainerNode prunedNode = ImmutableContainerNodeBuilder.create().withNodeIdentifier(
                 new YangInstanceIdentifier.NodeIdentifier(TEST_QNAME)).withChild(outerNode).build();
 
-        Optional<NormalizedNode<?, ?>> actual = dataTree.takeSnapshot().readNode(path);
+        Optional<NormalizedNode> actual = dataTree.takeSnapshot().readNode(path);
         assertTrue("After pruning present", actual.isPresent());
         assertEquals("After pruning", prunedNode, actual.get());
     }
 
     @Test
     public void testMergeWithValidNamespaceAndInvalidNodeName() throws DataValidationFailedException {
-        NormalizedNode<?, ?> normalizedNode = ImmutableNodes.containerNode(INVALID_TEST_QNAME);
+        NormalizedNode normalizedNode = ImmutableNodes.containerNode(INVALID_TEST_QNAME);
         YangInstanceIdentifier path = INVALID_TEST_PATH;
 
         pruningDataTreeModification.merge(path, normalizedNode);
@@ -183,7 +183,7 @@ public class PruningDataTreeModificationTest {
 
     @Test
     public void testWrite() {
-        NormalizedNode<?, ?> normalizedNode = CarsModel.create();
+        NormalizedNode normalizedNode = CarsModel.create();
         YangInstanceIdentifier path = CarsModel.BASE_PATH;
         pruningDataTreeModification.write(path, normalizedNode);
 
@@ -201,11 +201,11 @@ public class PruningDataTreeModificationTest {
         localDataTree.validate(mod);
         localDataTree.commit(localDataTree.prepare(mod));
 
-        NormalizedNode<?, ?> normalizedNode = dataTree.takeSnapshot().readNode(YangInstanceIdentifier.empty()).get();
+        NormalizedNode normalizedNode = dataTree.takeSnapshot().readNode(YangInstanceIdentifier.empty()).get();
         pruningDataTreeModification.write(YangInstanceIdentifier.empty(), normalizedNode);
         dataTree.commit(getCandidate());
 
-        Optional<NormalizedNode<?, ?>> actual = dataTree.takeSnapshot().readNode(YangInstanceIdentifier.empty());
+        Optional<NormalizedNode> actual = dataTree.takeSnapshot().readNode(YangInstanceIdentifier.empty());
         assertTrue("Root present", actual.isPresent());
         assertEquals("Root node", normalizedNode, actual.get());
     }
@@ -215,15 +215,15 @@ 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()).get();
+        NormalizedNode root = shardDataTree.readNode(YangInstanceIdentifier.empty()).get();
 
-        NormalizedNode<?, ?> normalizedNode = ImmutableContainerNodeBuilder.create().withNodeIdentifier(
-                new YangInstanceIdentifier.NodeIdentifier(root.getNodeType())).withChild(
+        NormalizedNode normalizedNode = ImmutableContainerNodeBuilder.create().withNodeIdentifier(
+                new YangInstanceIdentifier.NodeIdentifier(root.getIdentifier().getNodeType())).withChild(
                         ImmutableNodes.containerNode(AUG_CONTAINER)).build();
         pruningDataTreeModification.write(YangInstanceIdentifier.empty(), normalizedNode);
         dataTree.commit(getCandidate());
 
-        Optional<NormalizedNode<?, ?>> actual = dataTree.takeSnapshot().readNode(YangInstanceIdentifier.empty());
+        Optional<NormalizedNode> actual = dataTree.takeSnapshot().readNode(YangInstanceIdentifier.empty());
         assertEquals("Root present", true, actual.isPresent());
         assertEquals("Root node", root, actual.get());
 
@@ -231,7 +231,7 @@ public class PruningDataTreeModificationTest {
 
     @Test
     public void testWriteWithInvalidNamespace() throws DataValidationFailedException {
-        NormalizedNode<?, ?> normalizedNode = PeopleModel.emptyContainer();
+        NormalizedNode normalizedNode = PeopleModel.emptyContainer();
         YangInstanceIdentifier path = PeopleModel.BASE_PATH;
 
         pruningDataTreeModification.write(path, normalizedNode);
@@ -248,7 +248,7 @@ public class PruningDataTreeModificationTest {
                 new YangInstanceIdentifier.NodeIdentifier(AUG_CONTAINER)).withChild(
                         ImmutableNodes.containerNode(AUG_INNER_CONTAINER)).build();
 
-        DataContainerChild<?, ?> outerNode = outerNode(outerNodeEntry(1, innerNode("one", "two")));
+        DataContainerChild outerNode = outerNode(outerNodeEntry(1, innerNode("one", "two")));
         ContainerNode normalizedNode = ImmutableContainerNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TEST_QNAME)).withChild(outerNode)
                 .withChild(augContainer).withChild(ImmutableNodes.leafNode(AUG_QNAME, "aug"))
@@ -264,7 +264,7 @@ public class PruningDataTreeModificationTest {
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(TEST_QNAME)).withChild(outerNode)
                 .withChild(ImmutableNodes.leafNode(NAME_QNAME, "name")).build();
 
-        Optional<NormalizedNode<?, ?>> actual = dataTree.takeSnapshot().readNode(path);
+        Optional<NormalizedNode> actual = dataTree.takeSnapshot().readNode(path);
         assertTrue("After pruning present", actual.isPresent());
         assertEquals("After pruning", prunedNode, actual.get());
     }
index c93dbccff55845f151b7fede2b41bd2aacd61742..0722fcdbae4f7c6bf4b7f378493a50edcf046d67 100644 (file)
@@ -14,8 +14,9 @@ import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
 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.SystemMapNode;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.CollectionNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.CollectionNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableMapNodeBuilder;
 
@@ -35,13 +36,12 @@ public final class CarsModel {
 
     }
 
-    public static NormalizedNode<?, ?> create() {
+    public static ContainerNode create() {
 
         // Create a list builder
-        CollectionNodeBuilder<MapEntryNode, MapNode> cars =
+        CollectionNodeBuilder<MapEntryNode, SystemMapNode> cars =
             ImmutableMapNodeBuilder.create().withNodeIdentifier(
-                new YangInstanceIdentifier.NodeIdentifier(
-                    CAR_QNAME));
+                new YangInstanceIdentifier.NodeIdentifier(CAR_QNAME));
 
         // Create an entry for the car altima
         MapEntryNode altima =
@@ -67,7 +67,7 @@ public final class CarsModel {
 
     }
 
-    public static NormalizedNode<?, ?> createEmptyCarsList() {
+    public static NormalizedNode createEmptyCarsList() {
         return newCarsNode(newCarsMapNode());
     }
 
@@ -77,7 +77,7 @@ public final class CarsModel {
     }
 
     public static MapNode newCarsMapNode(final MapEntryNode... carEntries) {
-        CollectionNodeBuilder<MapEntryNode, MapNode> builder = ImmutableMapNodeBuilder.create()
+        CollectionNodeBuilder<MapEntryNode, SystemMapNode> builder = ImmutableMapNodeBuilder.create()
                 .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(CAR_QNAME));
         for (MapEntryNode e : carEntries) {
             builder.withChild(e);
@@ -86,13 +86,13 @@ public final class CarsModel {
         return builder.build();
     }
 
-    public static NormalizedNode<?, ?> emptyContainer() {
+    public static ContainerNode emptyContainer() {
         return ImmutableContainerNodeBuilder.create()
             .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(BASE_QNAME))
             .build();
     }
 
-    public static NormalizedNode<?, ?> newCarMapNode() {
+    public static SystemMapNode newCarMapNode() {
         return ImmutableNodes.mapNodeBuilder(CAR_QNAME).build();
     }
 
index 27576adea6097430fd5f4bc21468f9ee73a81cd4..0e041e0af5d52c6b52161714d62f211621502a60 100644 (file)
@@ -24,11 +24,11 @@ import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
 import org.opendaylight.yangtools.yang.data.api.schema.LeafSetEntryNode;
 import org.opendaylight.yangtools.yang.data.api.schema.LeafSetNode;
 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.SystemMapNode;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.CollectionNodeBuilder;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.DataContainerNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.Builders;
 import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.CollectionNodeBuilder;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.DataContainerNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableLeafSetEntryNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableLeafSetNodeBuilder;
@@ -153,7 +153,7 @@ public final class CompositeModel {
         final DataContainerNodeBuilder<NodeIdentifier, ContainerNode> familyContainerBuilder =
             ImmutableContainerNodeBuilder.create().withNodeIdentifier(new NodeIdentifier(FAMILY_QNAME));
 
-        final CollectionNodeBuilder<MapEntryNode, MapNode> childrenBuilder = mapNodeBuilder(CHILDREN_QNAME);
+        final CollectionNodeBuilder<MapEntryNode, SystemMapNode> childrenBuilder = mapNodeBuilder(CHILDREN_QNAME);
 
         final DataContainerNodeBuilder<NodeIdentifierWithPredicates, MapEntryNode>
             firstChildBuilder = mapEntryBuilder(CHILDREN_QNAME, CHILD_NUMBER_QNAME, FIRST_CHILD_ID);
index 33ee0a38afe9a4c2ee186f6bcc35e525e3a2c6ec..2672943685d466a537f804bdddd9b34cc2dc8170 100644 (file)
@@ -9,11 +9,11 @@ package org.opendaylight.controller.md.cluster.datastore.model;
 
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
+import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
 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.SystemMapNode;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.CollectionNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.CollectionNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableMapNodeBuilder;
 
@@ -33,10 +33,10 @@ public final class PeopleModel {
 
     }
 
-    public static NormalizedNode<?, ?> create() {
+    public static ContainerNode create() {
 
         // Create a list builder
-        CollectionNodeBuilder<MapEntryNode, MapNode> cars =
+        CollectionNodeBuilder<MapEntryNode, SystemMapNode> cars =
             ImmutableMapNodeBuilder.create().withNodeIdentifier(
                 new YangInstanceIdentifier.NodeIdentifier(
                     PERSON_QNAME));
@@ -65,14 +65,14 @@ public final class PeopleModel {
 
     }
 
-    public static NormalizedNode<?, ?> emptyContainer() {
+    public static ContainerNode emptyContainer() {
         return ImmutableContainerNodeBuilder.create()
             .withNodeIdentifier(
                 new YangInstanceIdentifier.NodeIdentifier(BASE_QNAME))
             .build();
     }
 
-    public static NormalizedNode<?, ?> newPersonMapNode() {
+    public static SystemMapNode newPersonMapNode() {
         return ImmutableNodes.mapNodeBuilder(PERSON_QNAME).build();
     }
 
index b7f5d0fc24bbdb58620cbbe5699ca18e197fe39e..5555b887d29e94205fccbae51f5095bc4f1759f5 100644 (file)
@@ -12,10 +12,10 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates;
 import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild;
 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.SystemMapNode;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.CollectionNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.CollectionNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder;
 import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
 import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils;
@@ -60,12 +60,12 @@ public final class TestModel {
         return YangParserTestUtils.parseYangResource(DATASTORE_TEST_YANG);
     }
 
-    public static DataContainerChild<?, ?> outerMapNode() {
+    public static DataContainerChild outerMapNode() {
         return ImmutableNodes.mapNodeBuilder(OUTER_LIST_QNAME).build();
     }
 
-    public static DataContainerChild<?, ?> outerNode(final int... ids) {
-        CollectionNodeBuilder<MapEntryNode, MapNode> outer = ImmutableNodes.mapNodeBuilder(OUTER_LIST_QNAME);
+    public static DataContainerChild outerNode(final int... ids) {
+        CollectionNodeBuilder<MapEntryNode, SystemMapNode> outer = ImmutableNodes.mapNodeBuilder(OUTER_LIST_QNAME);
         for (int id: ids) {
             outer.addChild(ImmutableNodes.mapEntry(OUTER_LIST_QNAME, ID_QNAME, id));
         }
@@ -73,8 +73,8 @@ public final class TestModel {
         return outer.build();
     }
 
-    public static DataContainerChild<?, ?> outerNode(final MapEntryNode... entries) {
-        CollectionNodeBuilder<MapEntryNode, MapNode> outer = ImmutableNodes.mapNodeBuilder(OUTER_LIST_QNAME);
+    public static DataContainerChild outerNode(final MapEntryNode... entries) {
+        CollectionNodeBuilder<MapEntryNode, SystemMapNode> outer = ImmutableNodes.mapNodeBuilder(OUTER_LIST_QNAME);
         for (MapEntryNode e: entries) {
             outer.addChild(e);
         }
@@ -82,8 +82,8 @@ public final class TestModel {
         return outer.build();
     }
 
-    public static DataContainerChild<?, ?> innerNode(final String... names) {
-        CollectionNodeBuilder<MapEntryNode, MapNode> outer = ImmutableNodes.mapNodeBuilder(INNER_LIST_QNAME);
+    public static DataContainerChild innerNode(final String... names) {
+        CollectionNodeBuilder<MapEntryNode, SystemMapNode> outer = ImmutableNodes.mapNodeBuilder(INNER_LIST_QNAME);
         for (String name: names) {
             outer.addChild(ImmutableNodes.mapEntry(INNER_LIST_QNAME, NAME_QNAME, name));
         }
@@ -91,15 +91,15 @@ public final class TestModel {
         return outer.build();
     }
 
-    public static MapEntryNode outerNodeEntry(final int id, final DataContainerChild<?, ?> inner) {
+    public static MapEntryNode outerNodeEntry(final int id, final DataContainerChild inner) {
         return ImmutableNodes.mapEntryBuilder(OUTER_LIST_QNAME, ID_QNAME, id).addChild(inner).build();
     }
 
-    public static NormalizedNode<?, ?> testNodeWithOuter(final int... ids) {
+    public static NormalizedNode testNodeWithOuter(final int... ids) {
         return testNodeWithOuter(outerNode(ids));
     }
 
-    public static NormalizedNode<?, ?> testNodeWithOuter(final DataContainerChild<?, ?> outer) {
+    public static NormalizedNode testNodeWithOuter(final DataContainerChild outer) {
         return ImmutableContainerNodeBuilder.create().withNodeIdentifier(
                 new YangInstanceIdentifier.NodeIdentifier(TEST_QNAME)).withChild(outer).build();
     }
index f7d1da785335df1210bb0b6a0ec70f56a431842e..eb81e992d039e270468e821c7191657c116858ed 100644 (file)
@@ -28,7 +28,6 @@ public abstract class AbstractEntityOwnerChangeListener implements DOMDataTreeCh
     }
 
     protected static String extractOwner(final LeafNode<?> ownerLeaf) {
-        return ownerLeaf.getValue().toString();
+        return ownerLeaf.body().toString();
     }
-
 }
index f1fe8d7ed52f38147f4c1a7047e55c7ade1208db..5a519d428966f683927e5a1019c49ee4ed0c6e23 100644 (file)
@@ -45,7 +45,6 @@ import org.opendaylight.mdsal.eos.dom.api.DOMEntityOwnershipListener;
 import org.opendaylight.mdsal.eos.dom.api.DOMEntityOwnershipListenerRegistration;
 import org.opendaylight.mdsal.eos.dom.api.DOMEntityOwnershipService;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.md.sal.clustering.entity.owners.rev150804.EntityOwners;
-import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
 import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild;
 import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode;
 import org.opendaylight.yangtools.yang.data.api.schema.MapNode;
@@ -185,7 +184,7 @@ public class DistributedEntityOwnershipService implements DOMEntityOwnershipServ
             return Optional.empty();
         }
 
-        Optional<NormalizedNode<?, ?>> entityNode = dataTree.takeSnapshot().readNode(
+        Optional<NormalizedNode> entityNode = dataTree.takeSnapshot().readNode(
                 entityPath(forEntity.getType(), forEntity.getIdentifier()));
         if (!entityNode.isPresent()) {
             return Optional.empty();
@@ -193,17 +192,16 @@ public class DistributedEntityOwnershipService implements DOMEntityOwnershipServ
 
         // Check if there are any candidates, if there are none we do not really have ownership state
         final MapEntryNode entity = (MapEntryNode) entityNode.get();
-        final Optional<DataContainerChild<? extends PathArgument, ?>> optionalCandidates =
-                entity.getChild(CANDIDATE_NODE_ID);
+        final Optional<DataContainerChild> optionalCandidates = entity.findChildByArg(CANDIDATE_NODE_ID);
         final boolean hasCandidates = optionalCandidates.isPresent()
-                && ((MapNode) optionalCandidates.get()).getValue().size() > 0;
+                && ((MapNode) optionalCandidates.get()).body().size() > 0;
         if (!hasCandidates) {
             return Optional.empty();
         }
 
         MemberName localMemberName = context.getCurrentMemberName();
-        Optional<DataContainerChild<? extends PathArgument, ?>> ownerLeaf = entity.getChild(ENTITY_OWNER_NODE_ID);
-        String owner = ownerLeaf.isPresent() ? ownerLeaf.get().getValue().toString() : null;
+        Optional<DataContainerChild> ownerLeaf = entity.findChildByArg(ENTITY_OWNER_NODE_ID);
+        String owner = ownerLeaf.isPresent() ? ownerLeaf.get().body().toString() : null;
         boolean hasOwner = !Strings.isNullOrEmpty(owner);
         boolean isOwner = hasOwner && localMemberName.getName().equals(owner);
 
index af45b7833b30208f927a4091100ec2a2f535c4e9..509e53cc9ff79082d482e56a03b956bb87cc0d3b 100644 (file)
@@ -52,7 +52,7 @@ class EntityOwnerChangeListener extends AbstractEntityOwnerChangeListener {
             String newOwner = extractOwner(ownerLeaf);
 
             String origOwner = null;
-            Optional<NormalizedNode<?, ?>> dataBefore = changeRoot.getDataBefore();
+            Optional<NormalizedNode> dataBefore = changeRoot.getDataBefore();
             if (dataBefore.isPresent()) {
                 origOwner = extractOwner((LeafNode<?>) changeRoot.getDataBefore().get());
             }
index 6670389156443473143d1470f59edf21244c7405..14da8aed8757f0d537856e99d2cb41330a4cc9b6 100644 (file)
@@ -24,7 +24,7 @@ import org.opendaylight.yangtools.yang.data.api.schema.MapNode;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
 import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableOrderedMapNodeBuilder;
+import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableUserMapNodeBuilder;
 
 /**
  * Utility methods for entity-owners yang model.
@@ -75,7 +75,7 @@ public final class EntityOwnersModel {
         return NodeIdentifierWithPredicates.of(Candidate.QNAME, CANDIDATE_NAME_QNAME, candidateName);
     }
 
-    static NormalizedNode<?, ?> entityOwnersWithCandidate(final String entityType,
+    static NormalizedNode entityOwnersWithCandidate(final String entityType,
             final YangInstanceIdentifier entityId, final String candidateName) {
         return entityOwnersWithEntityTypeEntry(entityTypeEntryWithEntityEntry(entityType,
                 entityEntryWithCandidateEntry(entityId, candidateName)));
@@ -100,7 +100,7 @@ public final class EntityOwnersModel {
     }
 
     static MapNode candidateEntry(final String candidateName) {
-        return ImmutableOrderedMapNodeBuilder.create().withNodeIdentifier(new NodeIdentifier(Candidate.QNAME))
+        return ImmutableUserMapNodeBuilder.create().withNodeIdentifier(new NodeIdentifier(Candidate.QNAME))
                 .addChild(candidateMapEntry(candidateName)).build();
     }
 
index 42ac18ef4aecb7a49ddb5ff433220d684c40f659..64d497b62f114e4f4448b947152fd72423490aa5 100644 (file)
@@ -69,7 +69,6 @@ import org.opendaylight.controller.cluster.raft.RaftState;
 import org.opendaylight.controller.cluster.raft.VotingState;
 import org.opendaylight.mdsal.eos.dom.api.DOMEntity;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
-import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
 import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild;
 import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode;
 import org.opendaylight.yangtools.yang.data.api.schema.MapNode;
@@ -174,7 +173,7 @@ class EntityOwnershipShard extends Shard {
     private void onRegisterCandidateLocal(final RegisterCandidateLocal registerCandidate) {
         LOG.debug("{}: onRegisterCandidateLocal: {}", persistenceId(), registerCandidate);
 
-        NormalizedNode<?, ?> entityOwners = entityOwnersWithCandidate(registerCandidate.getEntity().getType(),
+        NormalizedNode entityOwners = entityOwnersWithCandidate(registerCandidate.getEntity().getType(),
                 registerCandidate.getEntity().getIdentifier(), localMemberName.getName());
         commitCoordinator.commitModification(new MergeModification(ENTITY_OWNERS_PATH, entityOwners), this);
 
@@ -200,15 +199,16 @@ class EntityOwnershipShard extends Shard {
         getSender().tell(SuccessReply.INSTANCE, getSelf());
 
         searchForEntities((entityTypeNode, entityNode) -> {
-            Optional<DataContainerChild<?, ?>> possibleType = entityTypeNode.getChild(ENTITY_TYPE_NODE_ID);
-            String entityType = possibleType.isPresent() ? possibleType.get().getValue().toString() : null;
+            String entityType = entityTypeNode.findChildByArg(ENTITY_TYPE_NODE_ID)
+                .map(child -> child.body().toString())
+                .orElse(null);
             if (registerListener.getEntityType().equals(entityType)) {
                 final boolean hasOwner;
                 final boolean isOwner;
 
-                Optional<DataContainerChild<?, ?>> possibleOwner = entityNode.getChild(ENTITY_OWNER_NODE_ID);
+                Optional<DataContainerChild> possibleOwner = entityNode.findChildByArg(ENTITY_OWNER_NODE_ID);
                 if (possibleOwner.isPresent()) {
-                    isOwner = localMemberName.getName().equals(possibleOwner.get().getValue().toString());
+                    isOwner = localMemberName.getName().equals(possibleOwner.get().body().toString());
                     hasOwner = true;
                 } else {
                     isOwner = false;
@@ -216,7 +216,7 @@ class EntityOwnershipShard extends Shard {
                 }
 
                 DOMEntity entity = new DOMEntity(entityType,
-                    (YangInstanceIdentifier) entityNode.getChild(ENTITY_ID_NODE_ID).get().getValue());
+                    (YangInstanceIdentifier) entityNode.findChildByArg(ENTITY_ID_NODE_ID).get().body());
 
                 listenerSupport.notifyEntityOwnershipListener(entity, false, isOwner, hasOwner,
                     registerListener.getListener());
@@ -300,22 +300,22 @@ class EntityOwnershipShard extends Shard {
 
     private void notifyAllListeners() {
         searchForEntities((entityTypeNode, entityNode) -> {
-            Optional<DataContainerChild<?, ?>> possibleType = entityTypeNode.getChild(ENTITY_TYPE_NODE_ID);
+            Optional<DataContainerChild> possibleType = entityTypeNode.findChildByArg(ENTITY_TYPE_NODE_ID);
             if (possibleType.isPresent()) {
                 final boolean hasOwner;
                 final boolean isOwner;
 
-                Optional<DataContainerChild<?, ?>> possibleOwner = entityNode.getChild(ENTITY_OWNER_NODE_ID);
+                Optional<DataContainerChild> possibleOwner = entityNode.findChildByArg(ENTITY_OWNER_NODE_ID);
                 if (possibleOwner.isPresent()) {
-                    isOwner = localMemberName.getName().equals(possibleOwner.get().getValue().toString());
+                    isOwner = localMemberName.getName().equals(possibleOwner.get().body().toString());
                     hasOwner = true;
                 } else {
                     isOwner = false;
                     hasOwner = false;
                 }
 
-                DOMEntity entity = new DOMEntity(possibleType.get().getValue().toString(),
-                    (YangInstanceIdentifier) entityNode.getChild(ENTITY_ID_NODE_ID).get().getValue());
+                DOMEntity entity = new DOMEntity(possibleType.get().body().toString(),
+                    (YangInstanceIdentifier) entityNode.findChildByArg(ENTITY_ID_NODE_ID).get().body());
 
                 listenerSupport.notifyEntityOwnershipListeners(entity, isOwner, isOwner, hasOwner);
             }
@@ -390,7 +390,7 @@ class EntityOwnershipShard extends Shard {
                     .node(ENTITY_OWNER_NODE_ID).build();
 
             Optional<String> possibleOwner =
-                    entityNode.getChild(ENTITY_OWNER_NODE_ID).map(node -> node.getValue().toString());
+                    entityNode.findChildByArg(ENTITY_OWNER_NODE_ID).map(node -> node.body().toString());
             String newOwner = newOwner(possibleOwner.orElse(null), getCandidateNames(entityNode),
                     getEntityOwnerElectionStrategy(entityPath));
 
@@ -544,11 +544,11 @@ class EntityOwnershipShard extends Shard {
     }
 
     private static Collection<String> getCandidateNames(final MapEntryNode entity) {
-        return entity.getChild(CANDIDATE_NODE_ID).map(child -> {
-            Collection<MapEntryNode> candidates = ((MapNode) child).getValue();
+        return entity.findChildByArg(CANDIDATE_NODE_ID).map(child -> {
+            Collection<MapEntryNode> candidates = ((MapNode) child).body();
             Collection<String> candidateNames = new ArrayList<>(candidates.size());
             for (MapEntryNode candidate: candidates) {
-                candidateNames.add(candidate.getChild(CANDIDATE_NAME_NODE_ID).get().getValue().toString());
+                candidateNames.add(candidate.findChildByArg(CANDIDATE_NAME_NODE_ID).get().body().toString());
             }
             return candidateNames;
         }).orElse(ImmutableList.of());
@@ -558,9 +558,9 @@ class EntityOwnershipShard extends Shard {
         LOG.debug("{}: Searching for entities owned by {}", persistenceId(), ownedBy);
 
         searchForEntities((entityTypeNode, entityNode) -> {
-            Optional<DataContainerChild<? extends PathArgument, ?>> possibleOwner =
-                    entityNode.getChild(ENTITY_OWNER_NODE_ID);
-            String currentOwner = possibleOwner.isPresent() ? possibleOwner.get().getValue().toString() : "";
+            String currentOwner = entityNode.findChildByArg(ENTITY_OWNER_NODE_ID)
+                .map(child -> child.body().toString())
+                .orElse("");
             if (ownedBy.contains(currentOwner)) {
                 walker.onEntity(entityTypeNode, entityNode);
             }
@@ -587,25 +587,25 @@ class EntityOwnershipShard extends Shard {
     }
 
     private static boolean hasCandidate(final MapEntryNode entity, final MemberName candidateName) {
-        return entity.getChild(CANDIDATE_NODE_ID)
-                .flatMap(child -> ((MapNode)child).getChild(candidateNodeKey(candidateName.getName())))
+        return entity.findChildByArg(CANDIDATE_NODE_ID)
+                .flatMap(child -> ((MapNode)child).findChildByArg(candidateNodeKey(candidateName.getName())))
                 .isPresent();
     }
 
     private void searchForEntities(final EntityWalker walker) {
-        Optional<NormalizedNode<?, ?>> possibleEntityTypes = getDataStore().readNode(ENTITY_TYPES_PATH);
+        Optional<NormalizedNode> possibleEntityTypes = getDataStore().readNode(ENTITY_TYPES_PATH);
         if (!possibleEntityTypes.isPresent()) {
             return;
         }
 
-        for (MapEntryNode entityType : ((MapNode) possibleEntityTypes.get()).getValue()) {
-            Optional<DataContainerChild<?, ?>> possibleEntities = entityType.getChild(ENTITY_NODE_ID);
+        for (MapEntryNode entityType : ((MapNode) possibleEntityTypes.get()).body()) {
+            Optional<DataContainerChild> possibleEntities = entityType.findChildByArg(ENTITY_NODE_ID);
             if (!possibleEntities.isPresent()) {
                 // shouldn't happen but handle anyway
                 continue;
             }
 
-            for (MapEntryNode entity:  ((MapNode) possibleEntities.get()).getValue()) {
+            for (MapEntryNode entity:  ((MapNode) possibleEntities.get()).body()) {
                 walker.onEntity(entityType, entity);
             }
         }
@@ -669,7 +669,7 @@ class EntityOwnershipShard extends Shard {
 
     private String getCurrentOwner(final YangInstanceIdentifier entityId) {
         return getDataStore().readNode(entityId.node(ENTITY_OWNER_QNAME))
-                .map(owner -> owner.getValue().toString())
+                .map(owner -> owner.body().toString())
                 .orElse(null);
     }
 
index 6f0f9c3bdf5b0b520dfb23f19ffbe51288881681..0f2a4ec82cc069693f299948d197a65aba8ad4c7 100644 (file)
@@ -31,7 +31,8 @@ class EntityOwnershipStatistics extends AbstractEntityOwnerChangeListener {
 
     private final TrieMap<String, TrieMap<String, Long>> statistics = TrieMap.create();
 
-    EntityOwnershipStatistics(){
+    EntityOwnershipStatistics() {
+        // Hidden on purpose
     }
 
     @Override
@@ -45,7 +46,7 @@ class EntityOwnershipStatistics extends AbstractEntityOwnerChangeListener {
                 updateStatistics(entityType, newOwner, 1);
             }
 
-            Optional<NormalizedNode<?, ?>> dataBefore = changeRoot.getDataBefore();
+            Optional<NormalizedNode> dataBefore = changeRoot.getDataBefore();
             if (dataBefore.isPresent()) {
                 String origOwner = extractOwner((LeafNode<?>) changeRoot.getDataBefore().get());
                 if (!Strings.isNullOrEmpty(origOwner)) {
index 71c9073187e7802c5b4921951df46615d0f0ecf2..7fbe4d5d73327080afa0d5a176eea4baee5d9ea7 100644 (file)
@@ -7,7 +7,9 @@
  */
 package org.opendaylight.controller.cluster.entityownership;
 
+import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 import static org.mockito.ArgumentMatchers.argThat;
@@ -30,7 +32,6 @@ import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.function.Consumer;
 import java.util.function.Function;
-import org.junit.Assert;
 import org.opendaylight.controller.cluster.access.concepts.MemberName;
 import org.opendaylight.controller.cluster.datastore.AbstractActorTest;
 import org.opendaylight.controller.cluster.datastore.AbstractShardTest;
@@ -47,7 +48,6 @@ import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 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.PathArgument;
 import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
 import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild;
 import org.opendaylight.yangtools.yang.data.api.schema.DataContainerNode;
@@ -73,7 +73,7 @@ public class AbstractEntityOwnershipTest extends AbstractActorTest {
 
     private static final AtomicInteger NEXT_SHARD_NUM = new AtomicInteger();
 
-    protected void verifyEntityCandidate(final NormalizedNode<?, ?> node, final String entityType,
+    protected void verifyEntityCandidate(final NormalizedNode node, final String entityType,
             final YangInstanceIdentifier entityId, final String candidateName, final boolean expectPresent) {
         try {
             assertNotNull("Missing " + EntityOwners.QNAME.toString(), node);
@@ -94,12 +94,12 @@ public class AbstractEntityOwnershipTest extends AbstractActorTest {
     }
 
     protected void verifyEntityCandidate(final String entityType, final YangInstanceIdentifier entityId,
-            final String candidateName, final Function<YangInstanceIdentifier,NormalizedNode<?,?>> reader,
+            final String candidateName, final Function<YangInstanceIdentifier,NormalizedNode> reader,
             final boolean expectPresent) {
         AssertionError lastError = null;
         Stopwatch sw = Stopwatch.createStarted();
         while (sw.elapsed(TimeUnit.MILLISECONDS) <= 5000) {
-            NormalizedNode<?, ?> node = reader.apply(ENTITY_OWNERS_PATH);
+            NormalizedNode node = reader.apply(ENTITY_OWNERS_PATH);
             try {
                 verifyEntityCandidate(node, entityType, entityId, candidateName, expectPresent);
                 return;
@@ -113,14 +113,13 @@ public class AbstractEntityOwnershipTest extends AbstractActorTest {
     }
 
     protected void verifyEntityCandidate(final String entityType, final YangInstanceIdentifier entityId,
-            final String candidateName, final Function<YangInstanceIdentifier,NormalizedNode<?,?>> reader) {
+            final String candidateName, final Function<YangInstanceIdentifier,NormalizedNode> reader) {
         verifyEntityCandidate(entityType, entityId, candidateName, reader, true);
     }
 
-    protected MapEntryNode getMapEntryNodeChild(final DataContainerNode<? extends PathArgument> parent,
+    protected MapEntryNode getMapEntryNodeChild(final DataContainerNode parent,
             final QName childMap, final QName child, final Object key, final boolean expectPresent) {
-        Optional<DataContainerChild<? extends PathArgument, ?>> childNode =
-                parent.getChild(new NodeIdentifier(childMap));
+        Optional<DataContainerChild> childNode = parent.findChildByArg(new NodeIdentifier(childMap));
         // We have to account for empty maps disappearing. If we expect the entry to be non-present, tolerate a missing
         // map.
         if (!expectPresent && !childNode.isPresent()) {
@@ -130,10 +129,10 @@ public class AbstractEntityOwnershipTest extends AbstractActorTest {
         assertTrue("Missing " + childMap.toString(), childNode.isPresent());
 
         MapNode entityTypeMapNode = (MapNode) childNode.get();
-        Optional<MapEntryNode> entityTypeEntry = entityTypeMapNode.getChild(NodeIdentifierWithPredicates.of(
+        Optional<MapEntryNode> entityTypeEntry = entityTypeMapNode.findChildByArg(NodeIdentifierWithPredicates.of(
                 childMap, child, key));
         if (expectPresent && !entityTypeEntry.isPresent()) {
-            fail("Missing " + childMap.toString() + " entry for " + key + ". Actual: " + entityTypeMapNode.getValue());
+            fail("Missing " + childMap.toString() + " entry for " + key + ". Actual: " + entityTypeMapNode.body());
         } else if (!expectPresent && entityTypeEntry.isPresent()) {
             fail("Found unexpected " + childMap.toString() + " entry for " + key);
         }
@@ -142,15 +141,15 @@ public class AbstractEntityOwnershipTest extends AbstractActorTest {
     }
 
     static void verifyOwner(final String expected, final String entityType, final YangInstanceIdentifier entityId,
-            final Function<YangInstanceIdentifier,NormalizedNode<?,?>> reader) {
+            final Function<YangInstanceIdentifier,NormalizedNode> reader) {
         AssertionError lastError = null;
         YangInstanceIdentifier entityPath = entityPath(entityType, entityId).node(ENTITY_OWNER_QNAME);
         Stopwatch sw = Stopwatch.createStarted();
         while (sw.elapsed(TimeUnit.MILLISECONDS) <= 5000) {
             try {
-                NormalizedNode<?, ?> node = reader.apply(entityPath);
-                Assert.assertNotNull("Owner was not set for entityId: " + entityId, node);
-                Assert.assertEquals("Entity owner", expected, node.getValue().toString());
+                NormalizedNode node = reader.apply(entityPath);
+                assertNotNull("Owner was not set for entityId: " + entityId, node);
+                assertEquals("Entity owner", expected, node.body().toString());
                 return;
             } catch (AssertionError e) {
                 lastError = e;
@@ -174,13 +173,12 @@ public class AbstractEntityOwnershipTest extends AbstractActorTest {
     }
 
     protected void verifyNodeRemoved(final YangInstanceIdentifier path,
-            final Function<YangInstanceIdentifier,NormalizedNode<?,?>> reader) {
+            final Function<YangInstanceIdentifier,NormalizedNode> reader) {
         AssertionError lastError = null;
         Stopwatch sw = Stopwatch.createStarted();
         while (sw.elapsed(TimeUnit.MILLISECONDS) <= 5000) {
             try {
-                NormalizedNode<?, ?> node = reader.apply(path);
-                Assert.assertNull("Node was not removed at path: " + path, node);
+                assertNull("Node was not removed at path: " + path, reader.apply(path));
                 return;
             } catch (AssertionError e) {
                 lastError = e;
@@ -191,7 +189,7 @@ public class AbstractEntityOwnershipTest extends AbstractActorTest {
         throw lastError;
     }
 
-    static void writeNode(final YangInstanceIdentifier path, final NormalizedNode<?, ?> node,
+    static void writeNode(final YangInstanceIdentifier path, final NormalizedNode node,
             final ShardDataTree shardDataTree) throws DataValidationFailedException {
         DataTreeModification modification = shardDataTree.newModification();
         modification.merge(path, node);
@@ -235,9 +233,9 @@ public class AbstractEntityOwnershipTest extends AbstractActorTest {
             final YangInstanceIdentifier entityId) {
         YangInstanceIdentifier entityPath = entityPath(entityType, entityId).node(ENTITY_OWNER_QNAME);
         try {
-            NormalizedNode<?, ?> node = AbstractShardTest.readStore(shard, entityPath);
+            NormalizedNode node = AbstractShardTest.readStore(shard, entityPath);
             if (node != null) {
-                Assert.fail("Owner " + node.getValue() + " was set for " + entityPath);
+                fail("Owner " + node.body() + " was set for " + entityPath);
             }
 
         } catch (Exception e) {
index ce719238419cee48171df592a8ad0a188ef9c681..24cfca69a9b14d9a5945eac665ec43545013c20e 100644 (file)
@@ -106,7 +106,7 @@ public class CandidateListChangeListenerTest extends AbstractActorTest {
                 ImmutableSet.copyOf(candidateRemoved.getRemainingCandidates()));
     }
 
-    private void writeNode(final YangInstanceIdentifier path, final NormalizedNode<?, ?> node)
+    private void writeNode(final YangInstanceIdentifier path, final NormalizedNode node)
             throws DataValidationFailedException {
         AbstractEntityOwnershipTest.writeNode(path, node, shardDataTree);
     }
index d8eb685435dfe0e840eb73b62d53ea55e99bacc1..bcef25ee33bb972e87ef0e4e2af43708a72d0340 100644 (file)
@@ -848,14 +848,14 @@ public class DistributedEntityOwnershipIntegrationTest {
         AssertionError lastError = null;
         Stopwatch sw = Stopwatch.createStarted();
         while (sw.elapsed(TimeUnit.MILLISECONDS) <= 10000) {
-            Optional<NormalizedNode<?, ?>> possible = dataStore.newReadOnlyTransaction()
+            Optional<NormalizedNode> possible = dataStore.newReadOnlyTransaction()
                     .read(entityPath(entity.getType(), entity.getIdentifier()).node(Candidate.QNAME))
                     .get(5, TimeUnit.SECONDS);
             try {
                 assertTrue("Candidates not found for " + entity, possible.isPresent());
                 Collection<String> actual = new ArrayList<>();
-                for (MapEntryNode candidate: ((MapNode)possible.get()).getValue()) {
-                    actual.add(candidate.getChild(CANDIDATE_NAME_NODE_ID).get().getValue().toString());
+                for (MapEntryNode candidate: ((MapNode)possible.get()).body()) {
+                    actual.add(candidate.findChildByArg(CANDIDATE_NAME_NODE_ID).get().body().toString());
                 }
 
                 assertEquals("Candidates for " + entity, Arrays.asList(expCandidates), actual);
index ccfbbbb4cdb825570ea04075bd9286575e3b496a..6eb5847e2baedb211ce18b952837daa6d71114ce 100644 (file)
@@ -136,7 +136,7 @@ public class EntityOwnerChangeListenerTest {
                 anyBoolean(), anyBoolean());
     }
 
-    private void writeNode(final YangInstanceIdentifier path, final NormalizedNode<?, ?> node)
+    private void writeNode(final YangInstanceIdentifier path, final NormalizedNode node)
             throws DataValidationFailedException {
         AbstractEntityOwnershipTest.writeNode(path, node, shardDataTree);
     }
index b81f67752e17aa60f27c00946ab31fbfd70ea5ab..4ef77e5cdc8a8bc3821a74a7f422ce4bc964bcb2 100644 (file)
@@ -139,7 +139,7 @@ public class EntityOwnershipStatisticsTest extends AbstractActorTest {
         assertEquals(val, statistics.get(ENTITY_TYPE).get(memberName).longValue());
     }
 
-    private void writeNode(final YangInstanceIdentifier path, final NormalizedNode<?, ?> node)
+    private void writeNode(final YangInstanceIdentifier path, final NormalizedNode node)
             throws DataValidationFailedException {
         AbstractEntityOwnershipTest.writeNode(path, node, shardDataTree);
     }
index a7370490dc7b0a1428150cb46a5e8454c34cd25b..67da0963ee48df4e9190c5872f0f6f9bb54b5104 100644 (file)
@@ -27,7 +27,7 @@ final class RemoteRpcImplementation extends AbstractRemoteImplementation<Execute
 
     @Override
     public ListenableFuture<DOMRpcResult> invokeRpc(final DOMRpcIdentifier rpc,
-            final NormalizedNode<?, ?> input) {
+            final NormalizedNode input) {
         return new RemoteDOMRpcFuture(rpc.getType(), ask(ExecuteRpc.from(rpc, input)));
     }
 
index e9e04b2bdac54d68eacb4e2f7227ed52452ec4b3..613d986d7e35b0baa281e6b2fba60f7070ecd9cc 100644 (file)
@@ -18,7 +18,7 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 /**
  * An abstract base class for invocation requests. Specialized via {@link ExecuteAction} and {@link ExecuteRpc}.
  */
-public abstract class AbstractExecute<T, I extends NormalizedNode<?, ?>> implements Serializable {
+public abstract class AbstractExecute<T, I extends NormalizedNode> implements Serializable {
     private static final long serialVersionUID = 1L;
 
     private final transient @NonNull T type;
index 17897532ec852e5d5d019fd7168cf5bf96469250..b18449378d645137bed82703129834d42958990e 100644 (file)
@@ -14,7 +14,7 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 /**
  * An abstract base class for invocation responses. Specialized via {@link ActionResponse} and {@link RpcResponse}.
  */
-public abstract class AbstractResponse<T extends NormalizedNode<?, ?>> implements Serializable {
+public abstract class AbstractResponse<T extends NormalizedNode> implements Serializable {
     private static final long serialVersionUID = 1L;
 
     private final transient @Nullable T output;
index d6a23583aa10b1e4ffe2608260d3f059171468d5..145f86fba444a65a4a66029e958a93061357a544 100644 (file)
@@ -68,7 +68,7 @@ public class ActionResponse extends AbstractResponse<ContainerNode> {
         public void readExternal(final ObjectInput in) throws IOException, ClassNotFoundException {
             @SuppressWarnings("unchecked")
             final ImmutableList<RpcError> errors = (ImmutableList<RpcError>) in.readObject();
-            final Optional<NormalizedNode<?, ?>> output = SerializationUtils.readNormalizedNode(in);
+            final Optional<NormalizedNode> output = SerializationUtils.readNormalizedNode(in);
             actionResponse = new ActionResponse(output.map(ContainerNode.class::cast), errors);
         }
 
index 881a58775cec7b2b73843f19b07e27c538093656..873c5b89015ef3f9b4dc8a8279b2a6a9eed3d4c6 100644 (file)
@@ -22,15 +22,15 @@ import org.opendaylight.yangtools.yang.data.codec.binfmt.NormalizedNodeDataInput
 import org.opendaylight.yangtools.yang.data.codec.binfmt.NormalizedNodeDataOutput;
 import org.opendaylight.yangtools.yang.data.codec.binfmt.NormalizedNodeStreamVersion;
 
-public final class ExecuteRpc extends AbstractExecute<QName, @Nullable NormalizedNode<?, ?>> {
+public final class ExecuteRpc extends AbstractExecute<QName, @Nullable NormalizedNode> {
     private static final long serialVersionUID = 1128904894827335676L;
 
-    private ExecuteRpc(final @NonNull QName type, final @Nullable NormalizedNode<?, ?> input) {
+    private ExecuteRpc(final @NonNull QName type, final @Nullable NormalizedNode input) {
         super(type, input);
     }
 
     public static @NonNull ExecuteRpc from(final @NonNull DOMRpcIdentifier rpc,
-            final @Nullable NormalizedNode<?, ?> input) {
+            final @Nullable NormalizedNode input) {
         return new ExecuteRpc(rpc.getType(), input);
     }
 
@@ -67,7 +67,7 @@ public final class ExecuteRpc extends AbstractExecute<QName, @Nullable Normalize
         public void readExternal(final ObjectInput in) throws IOException {
             final NormalizedNodeDataInput stream = NormalizedNodeDataInput.newDataInput(in);
             final QName type = stream.readQName();
-            final NormalizedNode<?, ?> input = stream.readOptionalNormalizedNode().orElse(null);
+            final NormalizedNode input = stream.readOptionalNormalizedNode().orElse(null);
             executeRpc = new ExecuteRpc(type, input);
         }
 
index f141f09b3ccb42aa2f1adedb7c2299abba0e82da..97a515514001f5f8e1aa079886d2c955b5adbb10 100644 (file)
@@ -15,10 +15,10 @@ import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.controller.cluster.datastore.node.utils.stream.SerializationUtils;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 
-public class RpcResponse extends AbstractResponse<NormalizedNode<?, ?>> {
+public class RpcResponse extends AbstractResponse<NormalizedNode> {
     private static final long serialVersionUID = -4211279498688989245L;
 
-    public RpcResponse(final @Nullable NormalizedNode<?, ?> output) {
+    public RpcResponse(final @Nullable NormalizedNode output) {
         super(output);
     }
 
index 7a7d32c9818be13368636360a60a0d4425a649f5..a3e336f307656f1177898c4c3371c3b2416f79d5 100644 (file)
@@ -137,7 +137,7 @@ public class AbstractOpsTest {
         }
     }
 
-    static void assertCompositeNodeEquals(final NormalizedNode<? , ?> exp, final NormalizedNode<? , ?> actual) {
+    static void assertCompositeNodeEquals(final NormalizedNode exp, final NormalizedNode actual) {
         assertEquals(exp, actual);
     }
 
@@ -162,8 +162,7 @@ public class AbstractOpsTest {
                 applicationTag, info, causeMsg);
     }
 
-    static void assertSuccessfulRpcResult(final DOMRpcResult rpcResult,
-                                          final NormalizedNode<? , ?> expOutput) {
+    static void assertSuccessfulRpcResult(final DOMRpcResult rpcResult, final NormalizedNode expOutput) {
         assertNotNull("RpcResult was null", rpcResult);
         assertCompositeNodeEquals(expOutput, rpcResult.getResult());
     }
index b2a70be9d370f3e4411938994e7ff857fbbf38fa..679a19c78f04268d47402d25f01e382e001aba35 100644 (file)
@@ -51,9 +51,9 @@ public class RemoteOpsImplementationTest extends AbstractOpsTest {
         final ContainerNode rpcOutput = makeRPCOutput("bar");
         final DOMRpcResult rpcResult = new DefaultDOMRpcResult(rpcOutput);
 
-        final NormalizedNode<?, ?> invokeRpcInput = makeRPCInput("foo");
+        final NormalizedNode invokeRpcInput = makeRPCInput("foo");
         @SuppressWarnings({"unchecked", "rawtypes"})
-        final ArgumentCaptor<NormalizedNode<?, ?>> inputCaptor =
+        final ArgumentCaptor<NormalizedNode> inputCaptor =
                 ArgumentCaptor.forClass(NormalizedNode.class);
 
         doReturn(FluentFutures.immediateFluentFuture(rpcResult)).when(domRpcService2)
@@ -73,7 +73,7 @@ public class RemoteOpsImplementationTest extends AbstractOpsTest {
     public void testInvokeAction() throws Exception {
         final ContainerNode actionOutput = makeRPCOutput("bar");
         final DOMActionResult actionResult = new SimpleDOMActionResult(actionOutput, Collections.emptyList());
-        final NormalizedNode<?, ?> invokeActionInput = makeRPCInput("foo");
+        final NormalizedNode invokeActionInput = makeRPCInput("foo");
         @SuppressWarnings({"unchecked", "rawtypes"})
         final ArgumentCaptor<ContainerNode> inputCaptor =
                 ArgumentCaptor.forClass(ContainerNode.class);
@@ -96,7 +96,7 @@ public class RemoteOpsImplementationTest extends AbstractOpsTest {
         final DOMRpcResult rpcResult = new DefaultDOMRpcResult(rpcOutput);
 
         @SuppressWarnings({"unchecked", "rawtypes"})
-        final ArgumentCaptor<NormalizedNode<?, ?>> inputCaptor =
+        final ArgumentCaptor<NormalizedNode> inputCaptor =
                 (ArgumentCaptor) ArgumentCaptor.forClass(NormalizedNode.class);
 
         doReturn(FluentFutures.immediateFluentFuture(rpcResult)).when(domRpcService2)
@@ -139,9 +139,9 @@ public class RemoteOpsImplementationTest extends AbstractOpsTest {
         final ContainerNode rpcOutput = null;
         final DOMRpcResult rpcResult = new DefaultDOMRpcResult(rpcOutput);
 
-        final NormalizedNode<?, ?> invokeRpcInput = makeRPCInput("foo");
+        final NormalizedNode invokeRpcInput = makeRPCInput("foo");
         @SuppressWarnings({"unchecked", "rawtypes"})
-        final ArgumentCaptor<NormalizedNode<?, ?>> inputCaptor =
+        final ArgumentCaptor<NormalizedNode> inputCaptor =
                 (ArgumentCaptor) ArgumentCaptor.forClass(NormalizedNode.class);
 
         doReturn(FluentFutures.immediateFluentFuture(rpcResult)).when(domRpcService2)
@@ -160,9 +160,9 @@ public class RemoteOpsImplementationTest extends AbstractOpsTest {
     @SuppressWarnings({"checkstyle:AvoidHidingCauseException", "checkstyle:IllegalThrows"})
     @Test(expected = DOMRpcException.class)
     public void testInvokeRpcWithRemoteFailedFuture() throws Throwable {
-        final NormalizedNode<?, ?> invokeRpcInput = makeRPCInput("foo");
+        final NormalizedNode invokeRpcInput = makeRPCInput("foo");
         @SuppressWarnings({"unchecked", "rawtypes"})
-        final ArgumentCaptor<NormalizedNode<?, ?>> inputCaptor =
+        final ArgumentCaptor<NormalizedNode> inputCaptor =
                 (ArgumentCaptor) ArgumentCaptor.forClass(NormalizedNode.class);
 
         when(domRpcService2.invokeRpc(eq(TEST_RPC), inputCaptor.capture())).thenReturn(
@@ -211,7 +211,7 @@ public class RemoteOpsImplementationTest extends AbstractOpsTest {
     @Ignore
     @Test(expected = RemoteDOMRpcException.class)
     public void testInvokeRpcWithAkkaTimeoutException() throws Exception {
-        final NormalizedNode<?, ?> invokeRpcInput = makeRPCInput("foo");
+        final NormalizedNode invokeRpcInput = makeRPCInput("foo");
         final ListenableFuture<DOMRpcResult> frontEndFuture = remoteRpcImpl1.invokeRpc(TEST_RPC_ID, invokeRpcInput);
         assertTrue(frontEndFuture instanceof RemoteDOMRpcFuture);
 
@@ -225,7 +225,7 @@ public class RemoteOpsImplementationTest extends AbstractOpsTest {
     @Test(expected = DOMRpcException.class)
     @SuppressWarnings({"checkstyle:AvoidHidingCauseException", "checkstyle:IllegalThrows"})
     public void testInvokeRpcWithLookupException() throws Throwable {
-        final NormalizedNode<?, ?> invokeRpcInput = makeRPCInput("foo");
+        final NormalizedNode invokeRpcInput = makeRPCInput("foo");
 
         doThrow(new RuntimeException("test")).when(domRpcService2).invokeRpc(any(QName.class),
             any(NormalizedNode.class));
index 867d9a8700db550432a446121090e4c5560ae7c1..3ab51193df37f3b1cdd6e366177ecee886c8b7d1 100644 (file)
@@ -27,7 +27,6 @@ import com.google.common.base.Stopwatch;
 import com.google.common.collect.Sets;
 import com.google.common.util.concurrent.Uninterruptibles;
 import com.typesafe.config.ConfigFactory;
-import java.net.URI;
 import java.time.Duration;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -376,7 +375,7 @@ public class ActionRegistryTest {
         final int nRoutes = 500;
         final Collection<DOMActionInstance> added = new ArrayList<>(nRoutes);
         for (int i = 0; i < nRoutes; i++) {
-            QName type = QName.create(URI.create("/mockaction"), "mockaction" + routeIdCounter++);
+            QName type = QName.create("/mockaction", "mockaction" + routeIdCounter++);
             final DOMActionInstance routeId = DOMActionInstance.of(Absolute.of(type), LogicalDatastoreType.OPERATIONAL,
                     YangInstanceIdentifier.create(new YangInstanceIdentifier.NodeIdentifier(type)));
             added.add(routeId);
@@ -412,7 +411,7 @@ public class ActionRegistryTest {
     }
 
     private List<DOMActionInstance> createRouteIds() {
-        QName type = QName.create(URI.create("/mockaction"), "mockaction" + routeIdCounter++);
+        QName type = QName.create("/mockaction", "mockaction" + routeIdCounter++);
         List<DOMActionInstance> routeIds = new ArrayList<>(1);
         routeIds.add(DOMActionInstance.of(Absolute.of(type), LogicalDatastoreType.OPERATIONAL,
             YangInstanceIdentifier.create(new YangInstanceIdentifier.NodeIdentifier(type))));
index d552ad5f1294ff6164618b0cb7c37d0d8c4ce241..563bde4b143fc9ad679bcb221d5f449b0b08b522 100644 (file)
@@ -27,7 +27,6 @@ import com.google.common.base.Stopwatch;
 import com.google.common.collect.Sets;
 import com.google.common.util.concurrent.Uninterruptibles;
 import com.typesafe.config.ConfigFactory;
-import java.net.URI;
 import java.time.Duration;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -369,7 +368,7 @@ public class RpcRegistryTest {
         final int nRoutes = 500;
         final Collection<DOMRpcIdentifier> added = new ArrayList<>(nRoutes);
         for (int i = 0; i < nRoutes; i++) {
-            final DOMRpcIdentifier routeId = DOMRpcIdentifier.create(QName.create(URI.create("/mockrpc"), "type" + i));
+            final DOMRpcIdentifier routeId = DOMRpcIdentifier.create(QName.create("/mockrpc", "type" + i));
             added.add(routeId);
 
             //Uninterruptibles.sleepUninterruptibly(50, TimeUnit.MILLISECONDS);
@@ -402,7 +401,7 @@ public class RpcRegistryTest {
     }
 
     private List<DOMRpcIdentifier> createRouteIds() {
-        QName type = QName.create(URI.create("/mockrpc"), "mockrpc" + routeIdCounter++);
+        QName type = QName.create("/mockrpc", "mockrpc" + routeIdCounter++);
         List<DOMRpcIdentifier> routeIds = new ArrayList<>(1);
         routeIds.add(DOMRpcIdentifier.create(type));
         return routeIds;
index 2129ab628328298e6de7ddb72b7719b3671380a7..b090205c3663fa3a2c0a928b8466035cf1d53d24 100644 (file)
@@ -11,7 +11,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>odlparent-lite</artifactId>
-        <version>8.1.1</version>
+        <version>9.0.1</version>
         <relativePath/>
     </parent>
 
index d0d85b687dfb9324c045f0ef7700bd01519d1b67..21195940de0fedef357743827d7ddc9ece2dc9d4 100644 (file)
@@ -4,7 +4,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>odlparent-lite</artifactId>
-        <version>8.1.1</version>
+        <version>9.0.1</version>
         <relativePath/>
     </parent>
 
index 1b55dbac58cf4465c17f9cd6a9ae70c0164ff838..bd27bcf0dff30f114a70b65d200e5be119200c89 100644 (file)
@@ -20,7 +20,6 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controll
 import org.opendaylight.yangtools.util.concurrent.FluentFutures;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
-import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
 import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild;
 import org.opendaylight.yangtools.yang.data.api.schema.DataContainerNode;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
@@ -41,14 +40,14 @@ public class CarEntryDataTreeCommitCohort implements DOMDataTreeCommitCohort {
     private static final NodeIdentifier YEAR_NODE_ID = new NodeIdentifier(YEAR_QNAME);
 
     @Override
-    public FluentFuture<PostCanCommitStep> canCommit(Object txId, SchemaContext ctx,
-            Collection<DOMDataTreeCandidate> candidates) {
+    public FluentFuture<PostCanCommitStep> canCommit(final Object txId, final SchemaContext ctx,
+            final Collection<DOMDataTreeCandidate> candidates) {
 
         for (DOMDataTreeCandidate candidate : candidates) {
             // Simple data validation - verify the year, if present, is >= 1990
 
             final DataTreeCandidateNode rootNode = candidate.getRootNode();
-            final Optional<NormalizedNode<?, ?>> dataAfter = rootNode.getDataAfter();
+            final Optional<NormalizedNode> dataAfter = rootNode.getDataAfter();
 
             LOG.info("In canCommit: modificationType: {}, dataBefore: {}, dataAfter: {}",
                     rootNode.getModificationType(), rootNode.getDataBefore(), dataAfter);
@@ -57,18 +56,17 @@ public class CarEntryDataTreeCommitCohort implements DOMDataTreeCommitCohort {
             // ModificationType because dataAfter will not be present. Also dataAfter *should* always contain a
             // MapEntryNode but we verify anyway.
             if (dataAfter.isPresent()) {
-                final NormalizedNode<?, ?> normalizedNode = dataAfter.get();
+                final NormalizedNode normalizedNode = dataAfter.get();
                 Verify.verify(normalizedNode instanceof DataContainerNode,
                         "Expected type DataContainerNode, actual was %s", normalizedNode.getClass());
-                DataContainerNode<?> entryNode = (DataContainerNode<?>) normalizedNode;
-                final Optional<DataContainerChild<? extends PathArgument, ?>> possibleYear =
-                        entryNode.getChild(YEAR_NODE_ID);
+                DataContainerNode entryNode = (DataContainerNode) normalizedNode;
+                final Optional<DataContainerChild> possibleYear = entryNode.findChildByArg(YEAR_NODE_ID);
                 if (possibleYear.isPresent()) {
-                    final Number year = (Number) possibleYear.get().getValue();
+                    final Number year = (Number) possibleYear.get().body();
 
                     LOG.info("year is {}", year);
 
-                    if (!(year.longValue() >= 1990)) {
+                    if ((year.longValue() < 1990)) {
                         return FluentFutures.immediateFailedFluentFuture(new DataValidationFailedException(
                                 DOMDataTreeIdentifier.class, candidate.getRootPath(),
                                 String.format("Invalid year %d - year must be >= 1990", year)));
index abd725ebac375ac8b834c66ccc7deb1c52af8585..dd85b968b743a708e5419b4793bdfef95d1d1e6a 100644 (file)
@@ -440,7 +440,7 @@ public class MdsalLowLevelTestProvider implements OdlMdsalLowlevelControlService
         }
 
         try (DOMDataTreeReadTransaction rTx = domDataBroker.newReadOnlyTransaction()) {
-            final Optional<NormalizedNode<?, ?>> readResult = rTx.read(LogicalDatastoreType.CONFIGURATION,
+            final Optional<NormalizedNode> readResult = rTx.read(LogicalDatastoreType.CONFIGURATION,
                 WriteTransactionsHandler.ID_INT_YID).get();
 
             if (!readResult.isPresent()) {
index 87e4dd6ccead9f846b9d67df85a642aebbbefde0..d6c39f1996f4200e3f83145ba593c0a3f74ffee6 100644 (file)
@@ -9,7 +9,6 @@ package org.opendaylight.controller.clustering.it.provider.impl;
 
 import com.google.common.util.concurrent.Futures;
 import com.google.common.util.concurrent.ListenableFuture;
-import java.net.URI;
 import org.opendaylight.mdsal.dom.api.DOMRpcIdentifier;
 import org.opendaylight.mdsal.dom.api.DOMRpcImplementation;
 import org.opendaylight.mdsal.dom.api.DOMRpcImplementationRegistration;
@@ -19,6 +18,7 @@ import org.opendaylight.mdsal.dom.spi.DefaultDOMRpcResult;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
 import org.opendaylight.yangtools.yang.common.Revision;
+import org.opendaylight.yangtools.yang.common.XMLNamespace;
 import org.opendaylight.yangtools.yang.common.YangConstants;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
@@ -31,7 +31,8 @@ public final class GetConstantService implements DOMRpcImplementation {
     private static final Logger LOG = LoggerFactory.getLogger(GetConstantService.class);
 
     private static final QNameModule MODULE = QNameModule.create(
-        URI.create("tag:opendaylight.org,2017:controller:yang:lowlevel:target"), Revision.of("2017-02-15")).intern();
+        XMLNamespace.of("tag:opendaylight.org,2017:controller:yang:lowlevel:target"), Revision.of("2017-02-15"))
+        .intern();
 
     private static final QName OUTPUT = YangConstants.operationOutputQName(MODULE).intern();
     private static final QName CONSTANT = QName.create(MODULE, "constant").intern();
@@ -51,7 +52,7 @@ public final class GetConstantService implements DOMRpcImplementation {
     }
 
     @Override
-    public ListenableFuture<DOMRpcResult> invokeRpc(final DOMRpcIdentifier rpc, final NormalizedNode<?, ?> input) {
+    public ListenableFuture<DOMRpcResult> invokeRpc(final DOMRpcIdentifier rpc, final NormalizedNode input) {
         LOG.debug("get-constant invoked, current value: {}", constant);
 
         return Futures.immediateFuture(new DefaultDOMRpcResult(ImmutableContainerNodeBuilder.create()
index 14e728d286bdfb4b2fdcdf4e106a1828fb053a54..72a8a02b5e180adcf6b502ed7e4e7755140f1e02 100644 (file)
@@ -36,7 +36,7 @@ public class IdIntsListener implements ClusteredDOMDataTreeChangeListener {
     private static final Logger LOG = LoggerFactory.getLogger(IdIntsListener.class);
     private static final long SECOND_AS_NANO = 1000000000;
 
-    private volatile NormalizedNode<?, ?> localCopy;
+    private volatile NormalizedNode localCopy;
     private final AtomicLong lastNotifTimestamp = new AtomicLong(0);
     private ScheduledExecutorService executorService;
     private ScheduledFuture<?> scheduledFuture;
@@ -70,12 +70,12 @@ public class IdIntsListener implements ClusteredDOMDataTreeChangeListener {
         return localCopy != null;
     }
 
-    public boolean checkEqual(final NormalizedNode<?, ?> expected) {
+    public boolean checkEqual(final NormalizedNode expected) {
         return localCopy.equals(expected);
     }
 
     @SuppressFBWarnings("BC_UNCONFIRMED_CAST")
-    public String diffWithLocalCopy(final NormalizedNode<?, ?> expected) {
+    public String diffWithLocalCopy(final NormalizedNode expected) {
         return diffNodes((MapNode)expected, (MapNode)localCopy);
     }
 
@@ -94,9 +94,9 @@ public class IdIntsListener implements ClusteredDOMDataTreeChangeListener {
         final YangInstanceIdentifier.NodeIdentifier itemNodeId = new YangInstanceIdentifier.NodeIdentifier(ITEM);
 
         Map<NodeIdentifierWithPredicates, MapEntryNode> expIdIntMap = new HashMap<>();
-        expected.getValue().forEach(node -> expIdIntMap.put(node.getIdentifier(), node));
+        expected.body().forEach(node -> expIdIntMap.put(node.getIdentifier(), node));
 
-        actual.getValue().forEach(actIdInt -> {
+        actual.body().forEach(actIdInt -> {
             final MapEntryNode expIdInt = expIdIntMap.remove(actIdInt.getIdentifier());
             if (expIdInt == null) {
                 builder.append('\n').append("  Unexpected id-int entry for ").append(actIdInt.getIdentifier());
@@ -104,10 +104,10 @@ public class IdIntsListener implements ClusteredDOMDataTreeChangeListener {
             }
 
             Map<NodeIdentifierWithPredicates, MapEntryNode> expItemMap = new HashMap<>();
-            ((MapNode)expIdInt.getChild(itemNodeId).get()).getValue()
+            ((MapNode)expIdInt.findChildByArg(itemNodeId).get()).body()
                 .forEach(node -> expItemMap.put(node.getIdentifier(), node));
 
-            ((MapNode)actIdInt.getChild(itemNodeId).get()).getValue().forEach(actItem -> {
+            ((MapNode)actIdInt.findChildByArg(itemNodeId).get()).body().forEach(actItem -> {
                 final MapEntryNode expItem = expItemMap.remove(actItem.getIdentifier());
                 if (expItem == null) {
                     builder.append('\n').append("  Unexpected item entry ").append(actItem.getIdentifier())
index 4dd3cdff33de0108a68ac7a4f2acfac70afeca25..72888cd10daa625f2b9f3b814967354738435748 100644 (file)
@@ -9,7 +9,6 @@ package org.opendaylight.controller.clustering.it.provider.impl;
 
 import com.google.common.util.concurrent.Futures;
 import com.google.common.util.concurrent.ListenableFuture;
-import java.net.URI;
 import org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer;
 import org.opendaylight.mdsal.dom.api.DOMRpcIdentifier;
 import org.opendaylight.mdsal.dom.api.DOMRpcImplementation;
@@ -21,6 +20,7 @@ import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
 import org.opendaylight.yangtools.yang.common.Revision;
+import org.opendaylight.yangtools.yang.common.XMLNamespace;
 import org.opendaylight.yangtools.yang.common.YangConstants;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
@@ -34,7 +34,8 @@ public final class RoutedGetConstantService implements DOMRpcImplementation {
     private static final Logger LOG = LoggerFactory.getLogger(RoutedGetConstantService.class);
 
     private static final QNameModule MODULE = QNameModule.create(
-        URI.create("tag:opendaylight.org,2017:controller:yang:lowlevel:target"), Revision.of("2017-02-15")).intern();
+        XMLNamespace.of("tag:opendaylight.org,2017:controller:yang:lowlevel:target"), Revision.of("2017-02-15"))
+        .intern();
     private static final QName OUTPUT = YangConstants.operationOutputQName(MODULE).intern();
     private static final QName CONSTANT = QName.create(MODULE, "constant").intern();
     private static final QName GET_CONTEXTED_CONSTANT = QName.create(MODULE, "get-contexted-constant").intern();
@@ -58,7 +59,7 @@ public final class RoutedGetConstantService implements DOMRpcImplementation {
     }
 
     @Override
-    public ListenableFuture<DOMRpcResult> invokeRpc(final DOMRpcIdentifier rpc, final NormalizedNode<?, ?> input) {
+    public ListenableFuture<DOMRpcResult> invokeRpc(final DOMRpcIdentifier rpc, final NormalizedNode input) {
         LOG.debug("get-contexted-constant invoked, current value: {}", constant);
 
         return Futures.immediateFuture(new DefaultDOMRpcResult(ImmutableContainerNodeBuilder.create()
index b9df99799713a4477aa8cb639490a4489e43fd66..31d002268c1297944ebc7d610e8e78bc17d83e28 100644 (file)
@@ -9,7 +9,6 @@ package org.opendaylight.controller.clustering.it.provider.impl;
 
 import com.google.common.util.concurrent.Futures;
 import com.google.common.util.concurrent.ListenableFuture;
-import java.net.URI;
 import org.opendaylight.mdsal.dom.api.DOMRpcIdentifier;
 import org.opendaylight.mdsal.dom.api.DOMRpcImplementation;
 import org.opendaylight.mdsal.dom.api.DOMRpcImplementationRegistration;
@@ -23,6 +22,7 @@ import org.opendaylight.mdsal.singleton.common.api.ServiceGroupIdentifier;
 import org.opendaylight.yangtools.yang.common.QName;
 import org.opendaylight.yangtools.yang.common.QNameModule;
 import org.opendaylight.yangtools.yang.common.Revision;
+import org.opendaylight.yangtools.yang.common.XMLNamespace;
 import org.opendaylight.yangtools.yang.common.YangConstants;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
@@ -36,7 +36,8 @@ public final class SingletonGetConstantService implements DOMRpcImplementation,
     private static final Logger LOG = LoggerFactory.getLogger(SingletonGetConstantService.class);
 
     private static final QNameModule MODULE = QNameModule.create(
-        URI.create("tag:opendaylight.org,2017:controller:yang:lowlevel:target"), Revision.of("2017-02-15")).intern();
+        XMLNamespace.of("tag:opendaylight.org,2017:controller:yang:lowlevel:target"), Revision.of("2017-02-15"))
+        .intern();
     private static final QName OUTPUT = YangConstants.operationOutputQName(MODULE).intern();
     private static final QName CONSTANT = QName.create(MODULE, "constant").intern();
     private static final QName CONTEXT = QName.create(MODULE, "context").intern();
@@ -64,7 +65,7 @@ public final class SingletonGetConstantService implements DOMRpcImplementation,
     }
 
     @Override
-    public ListenableFuture<DOMRpcResult> invokeRpc(final DOMRpcIdentifier rpc, final NormalizedNode<?, ?> input) {
+    public ListenableFuture<DOMRpcResult> invokeRpc(final DOMRpcIdentifier rpc, final NormalizedNode input) {
         LOG.debug("get-singleton-constant invoked, current value: {}", constant);
 
         return Futures.immediateFuture(new DefaultDOMRpcResult(ImmutableContainerNodeBuilder.create()
index 00d7f73d1b685fbeb258e09f391e5eaca2c7ea6c..6354f8497f0e6be7170472ca606c1c30f8287dc6 100644 (file)
@@ -40,8 +40,9 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent
 import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
 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.SystemMapNode;
+import org.opendaylight.yangtools.yang.data.api.schema.builder.CollectionNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes;
-import org.opendaylight.yangtools.yang.data.impl.schema.builder.api.CollectionNodeBuilder;
 import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -180,7 +181,7 @@ public abstract class WriteTransactionsHandler extends AbstractTransactionHandle
 
         LOG.debug("Filling the item list with initial values.");
 
-        final CollectionNodeBuilder<MapEntryNode, MapNode> mapBuilder = ImmutableNodes.mapNodeBuilder(ITEM);
+        final CollectionNodeBuilder<MapEntryNode, SystemMapNode> mapBuilder = ImmutableNodes.mapNodeBuilder(ITEM);
 
         final YangInstanceIdentifier itemListId = idListItem.node(ITEM);
         tx = domDataBroker.newWriteOnlyTransaction();
index 40d9ebecf7a80a2479956be3c5b64f1a4d92450b..03772a509913dfaf2f74476e3a55073f9f261eb9 100644 (file)
@@ -4,7 +4,7 @@
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>odlparent-lite</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>
 
diff --git a/pom.xml b/pom.xml
index dc14d0bac52aee811250a08b96f9625799c30396..ec9c6b4609be383bda6df69ad0a4f901dd002225 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>odlparent-lite</artifactId>
-    <version>8.1.1</version>
+    <version>9.0.1</version>
     <relativePath/>
   </parent>