BUG-8733: switch to using DOMDataTreeListener-based APIs 72/60772/20
authorRobert Varga <robert.varga@pantheon.tech>
Tue, 25 Jul 2017 23:43:15 +0000 (01:43 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Mon, 31 Jul 2017 12:34:54 +0000 (14:34 +0200)
commit5281fa941604e5234e8543bc17267ad4f540e669
treeb908427d6b838968fd327e46cce3817066db0a8f
parentf09e24084d3ed855d60647f822bae9f663599c75
BUG-8733: switch to using DOMDataTreeListener-based APIs

This patch switches ShardedDOMDataTree to use
ListenableDOMDataTreeShard, performing adaptation and aggregation
only when needed.

The end result is that a DOMDataTreeListeners affected only by
a single ListenableDOMDataTreeShard are passed directly to that
instance, allowing for efficient event delivery.

In case a registration spans multiple shards, we register a listener
with each and use DOMDataTreeListenerAggregator to efficiently
merge the callbacks.

Change-Id: I0a879b45b2389d8def5ab824ab29dfbccc2b4f86
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/ShardedDOMDataTree.java
dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/ShardedDOMDataTreeListenerContext.java [deleted file]
dom/mdsal-dom-broker/src/main/java/org/opendaylight/mdsal/dom/broker/ShardedDOMDataTreeProducer.java