Rework NETCONF client reconnection 86/106786/8
authorRobert Varga <robert.varga@pantheon.tech>
Mon, 3 Jul 2023 08:32:23 +0000 (10:32 +0200)
committerRobert Varga <nite@hq.sk>
Wed, 5 Jul 2023 00:01:51 +0000 (00:01 +0000)
commit805fa94043a3655400415228f01b1efef554c921
treeb943eb013ad33a736a26c0f9eea865c42001fb1b
parent1754e90a9c72ab400ac15ad2d44ba31eeab317ef
Rework NETCONF client reconnection

This patch reworks the way establishing a connection works: we only have
createClient(), which returns a simple future. The logic for
reconnecting the client is now owned by each individual app.

This affects only netconf-topology implementations, which share common
code here in NetconfConnectorDTO and AbstractNetconfTopology. This is
re-shuffled into NetconfNodeHandler, which now encapsulates all the
state as well as the logic to issue reconnects.

JIRA: NETCONF-1070
Change-Id: I8f175329ab2826e46c95dee59c408e71bf453ccf
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
33 files changed:
apps/callhome-provider/src/main/java/org/opendaylight/netconf/callhome/mount/CallHomeMountDispatcher.java
apps/callhome-provider/src/main/java/org/opendaylight/netconf/callhome/mount/SingleReconnectFuture.java [deleted file]
apps/callhome-provider/src/test/java/org/opendaylight/netconf/callhome/mount/CallHomeMountDispatcherTest.java
apps/netconf-topology-impl/src/test/java/org/opendaylight/netconf/topology/impl/NetconfTopologyImplTest.java
apps/netconf-topology-singleton/src/test/java/org/opendaylight/netconf/topology/singleton/impl/MountPointEndToEndTest.java
apps/netconf-topology/src/main/java/org/opendaylight/netconf/topology/spi/AbstractNetconfTopology.java
apps/netconf-topology/src/main/java/org/opendaylight/netconf/topology/spi/NetconfConnectorDTO.java [deleted file]
apps/netconf-topology/src/main/java/org/opendaylight/netconf/topology/spi/NetconfNodeHandler.java [new file with mode: 0644]
netconf/netconf-netty-util/src/main/java/org/opendaylight/netconf/nettyutil/AbstractNetconfDispatcher.java
netconf/netconf-netty-util/src/main/java/org/opendaylight/netconf/nettyutil/NetconfSessionPromise.java
netconf/netconf-netty-util/src/main/java/org/opendaylight/netconf/nettyutil/NeverReconnectStrategy.java [deleted file]
netconf/netconf-netty-util/src/main/java/org/opendaylight/netconf/nettyutil/ReconnectFuture.java [deleted file]
netconf/netconf-netty-util/src/main/java/org/opendaylight/netconf/nettyutil/ReconnectImmediatelyStrategy.java [deleted file]
netconf/netconf-netty-util/src/main/java/org/opendaylight/netconf/nettyutil/ReconnectPromise.java [deleted file]
netconf/netconf-netty-util/src/main/java/org/opendaylight/netconf/nettyutil/ReconnectStrategy.java [deleted file]
netconf/netconf-netty-util/src/main/java/org/opendaylight/netconf/nettyutil/ReconnectStrategyFactory.java [deleted file]
netconf/netconf-netty-util/src/main/java/org/opendaylight/netconf/nettyutil/TimedReconnectStrategy.java [deleted file]
netconf/netconf-netty-util/src/main/java/org/opendaylight/netconf/nettyutil/TimedReconnectStrategyFactory.java [deleted file]
netconf/tools/netconf-testtool/src/main/java/org/opendaylight/netconf/test/tool/client/stress/StressClientCallable.java
netconf/tools/netconf-testtool/src/test/java/org/opendaylight/netconf/test/tool/TestToolTest.java
plugins/netconf-client-mdsal/src/main/java/org/opendaylight/netconf/client/mdsal/NetconfDeviceCommunicator.java
plugins/netconf-client-mdsal/src/test/java/org/opendaylight/netconf/client/mdsal/NetconfDeviceCommunicatorTest.java
protocol/netconf-client/src/main/java/org/opendaylight/netconf/client/NetconfClientDispatcher.java
protocol/netconf-client/src/main/java/org/opendaylight/netconf/client/NetconfClientDispatcherImpl.java
protocol/netconf-client/src/main/java/org/opendaylight/netconf/client/conf/NetconfClientConfiguration.java
protocol/netconf-client/src/main/java/org/opendaylight/netconf/client/conf/NetconfClientConfigurationBuilder.java
protocol/netconf-client/src/main/java/org/opendaylight/netconf/client/conf/NetconfReconnectingClientConfiguration.java [deleted file]
protocol/netconf-client/src/main/java/org/opendaylight/netconf/client/conf/NetconfReconnectingClientConfigurationBuilder.java [deleted file]
protocol/netconf-client/src/test/java/org/opendaylight/netconf/client/NetconfClientConfigurationTest.java
protocol/netconf-client/src/test/java/org/opendaylight/netconf/client/NetconfClientDispatcherImplTest.java
protocol/netconf-client/src/test/java/org/opendaylight/netconf/client/NetconfReconnectingClientConfigurationTest.java [deleted file]
protocol/netconf-client/src/test/java/org/opendaylight/netconf/client/TestingNetconfClient.java
protocol/netconf-server/src/test/java/org/opendaylight/netconf/server/ConcurrentClientsTest.java