- if (DOMDataTreeChangeService.class.equals(type) && ext instanceof DOMDataTreeChangeService treeChange) {
- return type.cast((DOMDataTreeChangeService) (domDataTreeIdentifier, listener) -> {
- final var rootId = domDataTreeIdentifier.path();
- if (isRegistrationWatched(rootId, domDataTreeIdentifier.datastore())) {
- LOG.warn("{} registration (registerDataTreeChangeListener) for {} from {}.",
- listener instanceof ClusteredDOMDataTreeChangeListener ? "Clustered" : "Non-clustered",
+ if (DataTreeChangeExtension.class.equals(type) && ext instanceof DataTreeChangeExtension treeChange) {
+ return type.cast(new DataTreeChangeExtension() {
+ @Override
+ public Registration registerTreeChangeListener(final DOMDataTreeIdentifier treeId,
+ final DOMDataTreeChangeListener listener) {
+ notifyIfWatched("Non-clustered", treeId, listener);
+ return treeChange.registerTreeChangeListener(treeId, listener);
+ }
+
+ @Override
+ @Deprecated(since = "13.0.0", forRemoval = true)
+ public Registration registerLegacyTreeChangeListener(final DOMDataTreeIdentifier treeId,
+ final DOMDataTreeChangeListener listener) {
+ notifyIfWatched("Non-clustered", treeId, listener);
+ return treeChange.registerLegacyTreeChangeListener(treeId, listener);
+ }
+
+ private void notifyIfWatched(final String kind, final DOMDataTreeIdentifier treeId,
+ final DOMDataTreeChangeListener listener) {
+ final var rootId = treeId.path();
+ if (isRegistrationWatched(rootId, treeId.datastore()) && LOG.isWarnEnabled()) {
+ LOG.warn("{} registration (registerDataTreeChangeListener) for {} from {}.", kind,