From 7b4cb422cf614c60a65b3b93a421ddfe7b447cd7 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Tue, 16 Jan 2024 18:27:53 +0100 Subject: [PATCH] Fix OSGiDOMSchemaService The conversion here got confused and has broken listeners -- these are published through OSGi SR, so we failed to pick them up from SR. Change-Id: I71ce644584ea3efbe6465aaff4c33d876e951e05 Signed-off-by: Robert Varga --- .../dom/schema/osgi/impl/OSGiDOMSchemaService.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dom/mdsal-dom-schema-osgi/src/main/java/org/opendaylight/mdsal/dom/schema/osgi/impl/OSGiDOMSchemaService.java b/dom/mdsal-dom-schema-osgi/src/main/java/org/opendaylight/mdsal/dom/schema/osgi/impl/OSGiDOMSchemaService.java index 013fc91e6c..d55f6a2f12 100644 --- a/dom/mdsal-dom-schema-osgi/src/main/java/org/opendaylight/mdsal/dom/schema/osgi/impl/OSGiDOMSchemaService.java +++ b/dom/mdsal-dom-schema-osgi/src/main/java/org/opendaylight/mdsal/dom/schema/osgi/impl/OSGiDOMSchemaService.java @@ -43,7 +43,7 @@ import org.slf4j.LoggerFactory; public final class OSGiDOMSchemaService implements DOMSchemaService, DOMSchemaService.YangTextSourceExtension { private static final Logger LOG = LoggerFactory.getLogger(OSGiDOMSchemaService.class); - private final List> listeners = new CopyOnWriteArrayList<>(); + private final List listeners = new CopyOnWriteArrayList<>(); private final AtomicReference currentSnapshot = new AtomicReference<>(); private final ComponentFactory listenerFactory; @@ -88,13 +88,13 @@ public final class OSGiDOMSchemaService implements DOMSchemaService, DOMSchemaSe @Reference(cardinality = ReferenceCardinality.MULTIPLE, policy = ReferencePolicy.DYNAMIC, policyOption = ReferencePolicyOption.GREEDY) - void addListener(final Consumer listener) { + void addListener(final ModelContextListener listener) { LOG.trace("Adding listener {}", listener); listeners.add(listener); - listener.accept(getGlobalContext()); + listener.onModelContextUpdated(getGlobalContext()); } - void removeListener(final Consumer listener) { + void removeListener(final ModelContextListener listener) { LOG.trace("Removing listener {}", listener); listeners.remove(listener); } @@ -126,9 +126,9 @@ public final class OSGiDOMSchemaService implements DOMSchemaService, DOMSchemaSe @SuppressWarnings("checkstyle:illegalCatch") private static void notifyListener(final @NonNull EffectiveModelContext modelContext, - final Consumer listener) { + final ModelContextListener listener) { try { - listener.accept(modelContext); + listener.onModelContextUpdated(modelContext); } catch (RuntimeException e) { LOG.warn("Failed to notify listener {}", listener, e); } -- 2.36.6