From 7eecaf1c102088217c67870e3386153e380ebd6e Mon Sep 17 00:00:00 2001 From: Gilles Thouenon Date: Sat, 11 Mar 2023 16:30:13 +0100 Subject: [PATCH] Convert NetworkModelServiceImpl into a Component JIRA: TRNSPRTPCE-736 Signed-off-by: Gilles Thouenon Change-Id: I8cece9475224d9301d2f71cacf36b3727368e191 --- .../tpce/module/TransportPCEImpl.java | 5 ++-- .../service/NetworkModelServiceImpl.java | 25 +++++++++++-------- .../blueprint/networkmodel-blueprint.xml | 15 +---------- 3 files changed, 18 insertions(+), 27 deletions(-) diff --git a/lighty/src/main/java/io/lighty/controllers/tpce/module/TransportPCEImpl.java b/lighty/src/main/java/io/lighty/controllers/tpce/module/TransportPCEImpl.java index 93cb0f582..f9f626e8f 100644 --- a/lighty/src/main/java/io/lighty/controllers/tpce/module/TransportPCEImpl.java +++ b/lighty/src/main/java/io/lighty/controllers/tpce/module/TransportPCEImpl.java @@ -141,8 +141,9 @@ public class TransportPCEImpl extends AbstractLightyModule implements TransportP TransportpceNetworkutilsService networkutilsServiceImpl = new NetworkUtilsImpl( lightyServices.getBindingDataBroker()); PortMapping portMapping = initPortMapping(lightyServices); - NetworkModelService networkModelService = new NetworkModelServiceImpl(networkTransaction, linkDiscoveryImpl, - portMapping, lightyServices.getBindingNotificationPublishService()); + NetworkModelService networkModelService = new NetworkModelServiceImpl(lightyServices.getBindingDataBroker(), + deviceTransactionManager, networkTransaction, portMapping, + lightyServices.getBindingNotificationPublishService()); FrequenciesService networkModelWavelengthService = new FrequenciesServiceImpl(lightyServices.getBindingDataBroker()); NetConfTopologyListener netConfTopologyListener = new NetConfTopologyListener(networkModelService, diff --git a/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/service/NetworkModelServiceImpl.java b/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/service/NetworkModelServiceImpl.java index f6eb1e571..5ee5d5931 100644 --- a/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/service/NetworkModelServiceImpl.java +++ b/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/service/NetworkModelServiceImpl.java @@ -19,10 +19,12 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; import java.util.stream.Collectors; import org.eclipse.jdt.annotation.Nullable; +import org.opendaylight.mdsal.binding.api.DataBroker; import org.opendaylight.mdsal.binding.api.NotificationPublishService; import org.opendaylight.mdsal.common.api.LogicalDatastoreType; import org.opendaylight.transportpce.common.InstanceIdentifiers; import org.opendaylight.transportpce.common.NetworkUtils; +import org.opendaylight.transportpce.common.device.DeviceTransactionManager; import org.opendaylight.transportpce.common.mapping.PortMapping; import org.opendaylight.transportpce.common.network.NetworkTransactionService; import org.opendaylight.transportpce.networkmodel.R2RLinkDiscovery; @@ -66,9 +68,13 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.top import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.device.rev221225.ConnectionOper.ConnectionStatus; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; import org.opendaylight.yangtools.yang.common.Uint32; +import org.osgi.service.component.annotations.Activate; +import org.osgi.service.component.annotations.Component; +import org.osgi.service.component.annotations.Reference; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +@Component(immediate = true) public class NetworkModelServiceImpl implements NetworkModelService { private static final Logger LOG = LoggerFactory.getLogger(NetworkModelServiceImpl.class); @@ -83,24 +89,21 @@ public class NetworkModelServiceImpl implements NetworkModelService { private Map topologyChanges; private TopologyUpdateResult notification = null; - public NetworkModelServiceImpl(final NetworkTransactionService networkTransactionService, - final R2RLinkDiscovery linkDiscovery, PortMapping portMapping, - final NotificationPublishService notificationPublishService) { + @Activate + public NetworkModelServiceImpl(@Reference DataBroker dataBroker, + @Reference DeviceTransactionManager deviceTransactionManager, + @Reference final NetworkTransactionService networkTransactionService, + @Reference PortMapping portMapping, + @Reference final NotificationPublishService notificationPublishService) { this.networkTransactionService = networkTransactionService; - this.linkDiscovery = linkDiscovery; + this.linkDiscovery = new R2RLinkDiscovery(dataBroker, deviceTransactionManager, networkTransactionService); this.portMapping = portMapping; this.topologyShardMountedDevice = new HashMap(); this.otnTopologyShardMountedDevice = new HashMap(); this.notificationPublishService = notificationPublishService; this.topologyChanges = new HashMap(); - } - - public void init() { - LOG.info("init ..."); - } - - public void close() { + LOG.debug("NetworkModelServiceImpl instantiated"); } @Override diff --git a/networkmodel/src/main/resources/OSGI-INF/blueprint/networkmodel-blueprint.xml b/networkmodel/src/main/resources/OSGI-INF/blueprint/networkmodel-blueprint.xml index 3badba5d4..150f06efd 100644 --- a/networkmodel/src/main/resources/OSGI-INF/blueprint/networkmodel-blueprint.xml +++ b/networkmodel/src/main/resources/OSGI-INF/blueprint/networkmodel-blueprint.xml @@ -14,13 +14,7 @@ - - - - - - - + @@ -49,11 +43,4 @@ - - - - - - - -- 2.36.6