From 93af921a040849938b2a80e0234bc9985b0f517b Mon Sep 17 00:00:00 2001 From: marekzatko Date: Wed, 24 Nov 2021 17:21:04 +0100 Subject: [PATCH] Remove DefaultTopologyReference service entry Another case of service being registered, but never accessed, remove it, making pcep-topology-provider viable to non OSGi users. JIRA: BGPCEP-960 Change-Id: I3f69f176891c845c1f399430ffb0a7c20fdb2cc6 Signed-off-by: marekzatko --- .../provider/PCEPTopologyInstance.java | 23 +------------------ .../provider/PCEPTopologySingleton.java | 2 +- .../provider/PCEPTopologyTracker.java | 8 +------ .../OSGI-INF/blueprint/pcep-topology.xml | 1 - 4 files changed, 3 insertions(+), 31 deletions(-) diff --git a/pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/PCEPTopologyInstance.java b/pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/PCEPTopologyInstance.java index 25f3915efb..9eceeb352e 100644 --- a/pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/PCEPTopologyInstance.java +++ b/pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/PCEPTopologyInstance.java @@ -13,13 +13,9 @@ import static java.util.Objects.requireNonNull; import com.google.common.collect.Iterables; import com.google.common.util.concurrent.ListenableFuture; import java.util.Collection; -import java.util.Dictionary; -import java.util.Hashtable; import org.checkerframework.checker.lock.qual.GuardedBy; import org.eclipse.jdt.annotation.NonNull; -import org.gaul.modernizer_maven_annotations.SuppressModernizer; import org.opendaylight.bgpcep.programming.spi.InstructionScheduler; -import org.opendaylight.bgpcep.topology.DefaultTopologyReference; import org.opendaylight.mdsal.binding.api.ClusteredDataTreeChangeListener; import org.opendaylight.mdsal.binding.api.DataTreeIdentifier; import org.opendaylight.mdsal.binding.api.DataTreeModification; @@ -29,8 +25,6 @@ import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology. import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.TopologyKey; import org.opendaylight.yangtools.concepts.Registration; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; -import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceRegistration; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -47,20 +41,15 @@ final class PCEPTopologyInstance implements ClusteredDataTreeChangeListener osgiReg; PCEPTopologyInstance(final TopologyKey topology, final PCEPTopologyProviderDependencies dependencies, - final InstructionScheduler scheduler, final BundleContext bundleContext) { + final InstructionScheduler scheduler) { this.topology = requireNonNull(topology); final var instanceIdentifier = InstanceIdentifier.create(NetworkTopology.class).child(Topology.class, topology); provider = new PCEPTopologyProvider(instanceIdentifier, dependencies, scheduler); - // FIXME: BGPCEP-960: this should not be necessary - osgiReg = bundleContext.registerService(DefaultTopologyReference.class.getName(), provider, props()); - reg = dependencies.getDataBroker().registerDataTreeChangeListener( DataTreeIdentifier.create(LogicalDatastoreType.CONFIGURATION, instanceIdentifier), this); LOG.info("Topology instance for {} initialized", topologyId()); @@ -71,9 +60,6 @@ final class PCEPTopologyInstance implements ClusteredDataTreeChangeListener props() { - final Dictionary properties = new Hashtable<>(2); - properties.put(PCEPTopologyProvider.class.getName(), topologyId()); - return properties; - } } diff --git a/pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/PCEPTopologySingleton.java b/pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/PCEPTopologySingleton.java index 4f50c8b472..afd246cac2 100644 --- a/pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/PCEPTopologySingleton.java +++ b/pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/PCEPTopologySingleton.java @@ -68,7 +68,7 @@ final class PCEPTopologySingleton { } LOG.trace("Topology {} instance {} instantiating", topologyId(), PCEPTopologySingleton.this); - instance = new PCEPTopologyInstance(topology, tracker, scheduler, tracker.bundleContext); + instance = new PCEPTopologyInstance(topology, tracker, scheduler); } @Override diff --git a/pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/PCEPTopologyTracker.java b/pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/PCEPTopologyTracker.java index 7bd8fc52da..ce82b3cfce 100644 --- a/pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/PCEPTopologyTracker.java +++ b/pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/PCEPTopologyTracker.java @@ -35,7 +35,6 @@ import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology. import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.TopologyTypes; import org.opendaylight.yangtools.concepts.Registration; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; -import org.osgi.framework.BundleContext; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -51,8 +50,6 @@ public final class PCEPTopologyTracker // Services we are using final @NonNull InstructionSchedulerFactory instructionSchedulerFactory; final @NonNull ClusterSingletonServiceProvider singletonService; - // FIXME: BGPCEP-960: this should not be needed - final @NonNull BundleContext bundleContext; private final @NonNull TopologySessionStatsRegistry stateRegistry; private final @NonNull RpcProviderService rpcProviderRegistry; private final @NonNull PceServerProvider pceServerProvider; @@ -83,9 +80,7 @@ public final class PCEPTopologyTracker public PCEPTopologyTracker(final DataBroker dataBroker, final ClusterSingletonServiceProvider singletonService, final RpcProviderService rpcProviderRegistry, final PCEPDispatcher pcepDispatcher, final InstructionSchedulerFactory instructionSchedulerFactory, - final TopologySessionStatsRegistry stateRegistry, final PceServerProvider pceServerProvider, - // FIXME: we should not be needing this OSGi dependency - final BundleContext bundleContext) { + final TopologySessionStatsRegistry stateRegistry, final PceServerProvider pceServerProvider) { this.dataBroker = requireNonNull(dataBroker); this.singletonService = requireNonNull(singletonService); this.rpcProviderRegistry = requireNonNull(rpcProviderRegistry); @@ -93,7 +88,6 @@ public final class PCEPTopologyTracker this.instructionSchedulerFactory = requireNonNull(instructionSchedulerFactory); this.stateRegistry = requireNonNull(stateRegistry); this.pceServerProvider = requireNonNull(pceServerProvider); - this.bundleContext = requireNonNull(bundleContext); reg = dataBroker.registerDataTreeChangeListener(DataTreeIdentifier.create(LogicalDatastoreType.CONFIGURATION, InstanceIdentifier.builder(NetworkTopology.class).child(Topology.class).child(TopologyTypes.class) diff --git a/pcep/topology/topology-provider/src/main/resources/OSGI-INF/blueprint/pcep-topology.xml b/pcep/topology/topology-provider/src/main/resources/OSGI-INF/blueprint/pcep-topology.xml index 789f14ed45..c3524976f8 100644 --- a/pcep/topology/topology-provider/src/main/resources/OSGI-INF/blueprint/pcep-topology.xml +++ b/pcep/topology/topology-provider/src/main/resources/OSGI-INF/blueprint/pcep-topology.xml @@ -27,6 +27,5 @@ - -- 2.36.6