Improve NETCONF session ID handling 46/105746/5
authorRobert Varga <robert.varga@pantheon.tech>
Fri, 28 Apr 2023 18:56:42 +0000 (20:56 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Sun, 30 Apr 2023 16:23:32 +0000 (18:23 +0200)
commita78eedbed12341f665d4988fa7c61c5c702cf2dd
tree222b71db30b8baeeea6795d6f6fc0e83f26daaf4
parent3578c00ce2daa5850f77d76c0041996ee172d2c4
Improve NETCONF session ID handling

The session ID has a well-defined semantics, which are not a String, nor
a long, but rather an Uint32 with minimum value of 1 -- as captured by
SessionIdType.

Use SessionIdType as the proper type-safe capture of this construct
across the project.

This also forces netconf-testtool to use proper lifecycle hooks, so that
the session ID is propagated.

JIRA: NETCONF-945
Change-Id: If197be95e8ac4943409eb4e00476a57269828e18
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
85 files changed:
apps/netconf-events-mdsal/src/main/java/org/opendaylight/netconf/server/events/mdsal/CreateSubscription.java
apps/netconf-events-mdsal/src/main/java/org/opendaylight/netconf/server/events/mdsal/NetconfNotificationOperationService.java
apps/netconf-events-mdsal/src/main/java/org/opendaylight/netconf/server/events/mdsal/NetconfNotificationOperationServiceFactory.java
apps/netconf-events-mdsal/src/test/java/org/opendaylight/netconf/server/events/mdsal/CreateSubscriptionTest.java
netconf/mdsal-netconf-monitoring/src/main/java/org/opendaylight/controller/config/yang/netconf/mdsal/monitoring/GetSchema.java
netconf/mdsal-netconf-monitoring/src/main/java/org/opendaylight/controller/config/yang/netconf/mdsal/monitoring/MdsalMonitoringMapperFactory.java
netconf/netconf-netty-util/src/main/java/org/opendaylight/netconf/nettyutil/AbstractNetconfSession.java
netconf/netconf-netty-util/src/test/java/org/opendaylight/netconf/nettyutil/AbstractNetconfSessionTest.java
netconf/netconf-netty-util/src/test/java/org/opendaylight/netconf/nettyutil/TestSessionNegotiator.java
netconf/netconf-netty-util/src/test/java/org/opendaylight/netconf/nettyutil/TestingNetconfSession.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/MdsalOperationProvider.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/NetconfDeviceSimulator.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/SimulatedOperationProvider.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/TesttoolNegotiationFactory.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/customrpc/SettableOperationProvider.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/monitoring/Get.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/monitoring/NetconfMonitoringOperationService.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/monitoring/NetconfMonitoringOperationServiceFactory.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/operations/DefaultOperationsCreator.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/operations/OperationsCreator.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/operations/OperationsProvider.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/rpc/SimulatedCommit.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/rpc/SimulatedCreateSubscription.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/rpc/SimulatedDiscardChanges.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/rpc/SimulatedEditConfig.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/rpc/SimulatedGet.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/rpc/SimulatedGetConfig.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/rpc/SimulatedLock.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/rpc/SimulatedUnLock.java
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/rpchandler/SettableOperationRpcProvider.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/MdsalNetconfOperationService.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/MdsalNetconfOperationServiceFactory.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/TransactionProvider.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/ops/AbstractConfigOperation.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/ops/AbstractEdit.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/ops/Commit.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/ops/CopyConfig.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/ops/DiscardChanges.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/ops/EditConfig.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/ops/Lock.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/ops/RuntimeRpc.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/ops/Unlock.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/ops/Validate.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/ops/get/AbstractGet.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/ops/get/Get.java
plugins/netconf-server-mdsal/src/main/java/org/opendaylight/netconf/mdsal/connector/ops/get/GetConfig.java
plugins/netconf-server-mdsal/src/test/java/org/opendaylight/netconf/mdsal/connector/ops/AbstractNetconfOperationTest.java
plugins/netconf-server-mdsal/src/test/java/org/opendaylight/netconf/mdsal/connector/ops/NetconfMDSalMappingTest.java
plugins/netconf-server-mdsal/src/test/java/org/opendaylight/netconf/mdsal/connector/ops/RuntimeRpcTest.java
plugins/netconf-server-mdsal/src/test/java/org/opendaylight/netconf/mdsal/connector/ops/get/Netconf538Test.java
plugins/sal-netconf-connector/src/main/java/org/opendaylight/netconf/sal/connect/netconf/listener/NetconfSessionPreferences.java
plugins/sal-netconf-connector/src/test/java/org/opendaylight/netconf/sal/connect/netconf/listener/NetconfDeviceCommunicatorTest.java
protocol/netconf-api/pom.xml
protocol/netconf-api/src/main/java/org/opendaylight/netconf/api/messages/HelloMessage.java
protocol/netconf-api/src/test/java/org/opendaylight/netconf/api/messages/HelloMessageTest.java
protocol/netconf-client/src/main/java/org/opendaylight/netconf/client/NetconfClientSession.java
protocol/netconf-client/src/main/java/org/opendaylight/netconf/client/NetconfClientSessionNegotiator.java
protocol/netconf-client/src/test/java/org/opendaylight/netconf/client/NetconfClientSessionNegotiatorTest.java
protocol/netconf-client/src/test/java/org/opendaylight/netconf/client/NetconfClientSessionTest.java
protocol/netconf-client/src/test/java/org/opendaylight/netconf/client/SimpleNetconfClientSessionListenerTest.java
protocol/netconf-client/src/test/java/org/opendaylight/netconf/client/TestingNetconfClient.java
protocol/netconf-server/pom.xml
protocol/netconf-server/src/main/java/org/opendaylight/netconf/server/NetconfServerSession.java
protocol/netconf-server/src/main/java/org/opendaylight/netconf/server/NetconfServerSessionNegotiator.java
protocol/netconf-server/src/main/java/org/opendaylight/netconf/server/NetconfServerSessionNegotiatorFactory.java
protocol/netconf-server/src/main/java/org/opendaylight/netconf/server/api/SessionIdProvider.java
protocol/netconf-server/src/main/java/org/opendaylight/netconf/server/api/operations/AbstractLastNetconfOperation.java
protocol/netconf-server/src/main/java/org/opendaylight/netconf/server/api/operations/AbstractNetconfOperation.java
protocol/netconf-server/src/main/java/org/opendaylight/netconf/server/api/operations/AbstractSingletonNetconfOperation.java
protocol/netconf-server/src/main/java/org/opendaylight/netconf/server/api/operations/NetconfOperationServiceFactory.java
protocol/netconf-server/src/main/java/org/opendaylight/netconf/server/impl/DefaultSessionIdProvider.java
protocol/netconf-server/src/main/java/org/opendaylight/netconf/server/mapping/operations/DefaultCloseSession.java
protocol/netconf-server/src/main/java/org/opendaylight/netconf/server/mapping/operations/DefaultStartExi.java
protocol/netconf-server/src/main/java/org/opendaylight/netconf/server/mapping/operations/DefaultStopExi.java
protocol/netconf-server/src/main/java/org/opendaylight/netconf/server/osgi/AggregatedNetconfOperationServiceFactory.java
protocol/netconf-server/src/main/java/org/opendaylight/netconf/server/osgi/NetconfOperationRouterImpl.java
protocol/netconf-server/src/test/java/org/opendaylight/netconf/server/ConcurrentClientsTest.java
protocol/netconf-server/src/test/java/org/opendaylight/netconf/server/NetconfServerSessionListenerTest.java
protocol/netconf-server/src/test/java/org/opendaylight/netconf/server/NetconfServerSessionTest.java
protocol/netconf-server/src/test/java/org/opendaylight/netconf/server/api/operations/AbstractLastNetconfOperationTest.java
protocol/netconf-server/src/test/java/org/opendaylight/netconf/server/api/operations/AbstractNetconfOperationTest.java
protocol/netconf-server/src/test/java/org/opendaylight/netconf/server/api/operations/AbstractSingletonNetconfOperationTest.java
protocol/netconf-server/src/test/java/org/opendaylight/netconf/server/mapping/operations/DefaultCloseSessionTest.java
protocol/netconf-server/src/test/java/org/opendaylight/netconf/server/mapping/operations/DefaultStopExiTest.java
protocol/netconf-server/src/test/java/org/opendaylight/netconf/server/osgi/NetconfOperationRouterImplTest.java