- public <L extends DOMDataTreeChangeListener> ListenerRegistration<L> registerDataTreeChangeListener(final DOMDataTreeIdentifier treeId, final L listener) {
- if (delegate instanceof DOMDataTreeChangeService) {
- return ((DOMDataTreeChangeService)delegate).registerDataTreeChangeListener(treeId, listener);
+ public <L extends DOMDataTreeChangeListener> ListenerRegistration<L> registerDataTreeChangeListener(
+ final DOMDataTreeIdentifier treeId, final L listener) {
+ final DOMDataTreeChangeService treeService = (DOMDataTreeChangeService) delegate.getSupportedExtensions()
+ .get(DOMDataTreeChangeService.class);
+ if (treeService != null) {
+ return treeService.registerDataTreeChangeListener(treeId, listener);