Fix incorrect operational state of device configuration 88/107688/14
authorYaroslav Lastivka <yaroslav.lastivka@pantheon.tech>
Mon, 4 Sep 2023 10:04:51 +0000 (13:04 +0300)
committerIvan Hrasko <ivan.hrasko@pantheon.tech>
Fri, 13 Oct 2023 12:55:15 +0000 (12:55 +0000)
commit9b34de22993069b9de22e73a6e3bf3da83f2737c
tree065776206dd4b1fbd23482f269840ac9d6a986d2
parente5a886e8be63de08b66f504410b318cc7435a3a0
Fix incorrect operational state of device configuration

Initialization of clientConfig in NetconfNodeHandler can throw
a RuntimeException, leaving no handler to clean up
the operational datastore. This results in garbage
data upon node deletion.

Made clientConfig nullable and wrapped its initialization in
a try/catch block to handle exceptions. Moved input validation
for host/port from AbstractNetconfTopology#setupConnection()
to DefaultNetconfClientConfigurationBuilderFactory
and included relevant unit tests.

JIRA: NETCONF-1114
Change-Id: Ieb74ee3c1a4e0cbab7f0e01c942d1e8c1d6e20e4
Signed-off-by: Yaroslav Lastivka <yaroslav.lastivka@pantheon.tech>
Signed-off-by: Ivan Hrasko <ivan.hrasko@pantheon.tech>
apps/netconf-topology/src/main/java/org/opendaylight/netconf/topology/spi/AbstractNetconfTopology.java
apps/netconf-topology/src/main/java/org/opendaylight/netconf/topology/spi/DefaultNetconfClientConfigurationBuilderFactory.java
apps/netconf-topology/src/main/java/org/opendaylight/netconf/topology/spi/NetconfNodeHandler.java
apps/netconf-topology/src/test/java/org/opendaylight/netconf/topology/spi/DefaultNetconfClientConfigurationBuilderFactoryTest.java
apps/netconf-topology/src/test/java/org/opendaylight/netconf/topology/spi/NetconfNodeHandlerTest.java