Fix AbstractDOMRoutingTable.{add,remove}All() 42/103442/4
authorRobert Varga <robert.varga@pantheon.tech>
Mon, 28 Nov 2022 13:15:17 +0000 (14:15 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Mon, 28 Nov 2022 17:02:38 +0000 (18:02 +0100)
commit6de97609d101ed52828c7e7dd1b30a4acd4b7411
tree950cd6a38ce8bae4fd65b50e741d1c0e08e0f6f4
parent81acc2178413137f7dbbbc5405d45b893d426984
Fix AbstractDOMRoutingTable.{add,remove}All()

Our naive implementation breaks down if we are registering multiple
items, as we end up adding unmodified entries each and every time.

Fix this up by decomposing identifiers in the caller, keeping them in a
table and then have addAll()/removeAll() work on the table, with careful
checks.

JIRA: MDSAL-796
Change-Id: I0a52763e047026c1a641d9a25d82ee1d193fd573
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/AbstractDOMRoutingTable.java
dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/DOMRpcRouter.java
dom/mdsal-dom-broker/src/test/java/org/opendaylight/mdsal/dom/broker/DOMRpcRouterTest.java