Convert OtnDeviceRendererServiceImpl to Component 35/104935/4
authorGilles Thouenon <gilles.thouenon@orange.com>
Mon, 13 Mar 2023 14:18:38 +0000 (15:18 +0100)
committerguillaume.lambert <guillaume.lambert@orange.com>
Sun, 26 Mar 2023 20:57:44 +0000 (22:57 +0200)
JIRA: TRNSPRTPCE-736
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I018e6a5d916857949ee584f852b34b34d8851c5f

lighty/src/main/java/io/lighty/controllers/tpce/module/TransportPCEImpl.java
renderer/src/main/java/org/opendaylight/transportpce/renderer/provisiondevice/OtnDeviceRendererServiceImpl.java
renderer/src/main/resources/OSGI-INF/blueprint/renderer-blueprint.xml

index 209ba963822ddeee7b94a94d806938851b24acd4..4961ec83cd2fdfdc31a58e32e01a58225d1ee915 100644 (file)
@@ -169,12 +169,12 @@ public class TransportPCEImpl extends AbstractLightyModule implements TransportP
         olmProvider = new OlmProvider(lightyServices.getRpcProviderService(), olmPowerServiceRpc);
 
         LOG.info("Creating renderer beans ...");
-        OpenRoadmInterfaceFactory openRoadmInterfaceFactory = initOpenRoadmFactory(mappingUtils, openRoadmInterfaces, portMapping);
+        initOpenRoadmFactory(mappingUtils, openRoadmInterfaces, portMapping);
         DeviceRendererService deviceRendererService = new DeviceRendererServiceImpl(
                 lightyServices.getBindingDataBroker(), deviceTransactionManager, openRoadmInterfaces, crossConnect,
                 mappingUtils, portMapping);
-        OtnDeviceRendererService otnDeviceRendererService = new OtnDeviceRendererServiceImpl(openRoadmInterfaceFactory,
-                crossConnect, openRoadmInterfaces, deviceTransactionManager, networkModelService);
+        OtnDeviceRendererService otnDeviceRendererService = new OtnDeviceRendererServiceImpl(crossConnect,
+                openRoadmInterfaces, deviceTransactionManager, mappingUtils, portMapping);
         rendererProvider = initRenderer(lightyServices, olmPowerServiceRpc, deviceRendererService,
                 otnDeviceRendererService, portMapping);
 
index 4fceed9513a30220cb475b07717ddbe9c5ae8141..9573ed322493ed7ebc23fe7fc7d4dfd7599987dd 100644 (file)
@@ -25,9 +25,10 @@ import java.util.concurrent.atomic.AtomicBoolean;
 import org.opendaylight.transportpce.common.StringConstants;
 import org.opendaylight.transportpce.common.crossconnect.CrossConnect;
 import org.opendaylight.transportpce.common.device.DeviceTransactionManager;
+import org.opendaylight.transportpce.common.mapping.MappingUtils;
+import org.opendaylight.transportpce.common.mapping.PortMapping;
 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaceException;
 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaces;
-import org.opendaylight.transportpce.networkmodel.service.NetworkModelService;
 import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterfaceFactory;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev211004.OtnServicePathInput;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev211004.OtnServicePathOutput;
@@ -41,10 +42,14 @@ import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev220926
 import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev220926.node.interfaces.NodeInterfaceBuilder;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev220926.node.interfaces.NodeInterfaceKey;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev220926.otn.renderer.nodes.Nodes;
+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
 public class OtnDeviceRendererServiceImpl implements OtnDeviceRendererService {
     private static final Logger LOG = LoggerFactory.getLogger(OtnDeviceRendererServiceImpl.class);
     private static final String PT_03 = "03";
@@ -54,14 +59,16 @@ public class OtnDeviceRendererServiceImpl implements OtnDeviceRendererService {
     private final OpenRoadmInterfaces openRoadmInterfaces;
     private final DeviceTransactionManager deviceTransactionManager;
 
-    public OtnDeviceRendererServiceImpl(OpenRoadmInterfaceFactory openRoadmInterfaceFactory, CrossConnect crossConnect,
-                                        OpenRoadmInterfaces openRoadmInterfaces,
-                                        DeviceTransactionManager deviceTransactionManager,
-                                        NetworkModelService networkModelService) {
-        this.openRoadmInterfaceFactory = openRoadmInterfaceFactory;
+    @Activate
+    public OtnDeviceRendererServiceImpl(@Reference CrossConnect crossConnect,
+            @Reference OpenRoadmInterfaces openRoadmInterfaces,
+            @Reference DeviceTransactionManager deviceTransactionManager,
+            @Reference MappingUtils mappingUtils,
+            @Reference PortMapping portMapping) {
         this.crossConnect = crossConnect;
         this.openRoadmInterfaces = openRoadmInterfaces;
         this.deviceTransactionManager = deviceTransactionManager;
+        this.openRoadmInterfaceFactory = new OpenRoadmInterfaceFactory(mappingUtils, portMapping, openRoadmInterfaces);
     }
 
 //TODO Align log messages and returned results messages
index 7404257b3de3a1ce90c1c354824118428e29e6dd..80dd82543e260ca892144ed259f2497fded6d99c 100644 (file)
@@ -21,21 +21,8 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <reference id="networkModelService" interface="org.opendaylight.transportpce.networkmodel.service.NetworkModelService"/>
   <reference id="olmService" interface="org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.TransportpceOlmService"/>
   <reference id="deviceRenderer" interface="org.opendaylight.transportpce.renderer.provisiondevice.DeviceRendererService" />
+  <reference id="otnDeviceRenderer" interface="org.opendaylight.transportpce.renderer.provisiondevice.OtnDeviceRendererService"/>
 
-  <bean id="openRoadmInterfaceFactory"
-        class="org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterfaceFactory">
-    <argument ref="mappingUtils"/>
-    <argument ref="portMapping"/>
-    <argument ref="openRoadmInterfaces"/>
-  </bean>
-
-  <bean id="otnDeviceRenderer" class="org.opendaylight.transportpce.renderer.provisiondevice.OtnDeviceRendererServiceImpl" >
-    <argument ref="openRoadmInterfaceFactory" />
-    <argument ref="crossConnect" />
-    <argument ref="openRoadmInterfaces" />
-    <argument ref="deviceTransactionManager" />
-    <argument ref="networkModelService" />
-  </bean>
 
     <bean id="deviceRendererRPCImpl" class="org.opendaylight.transportpce.renderer.rpcs.DeviceRendererRPCImpl" >
     <argument ref="deviceRenderer" />
@@ -60,7 +47,5 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
 
   <service ref="rendererServiceOperations"
            interface="org.opendaylight.transportpce.renderer.provisiondevice.RendererServiceOperations" />
-  <service ref="otnDeviceRenderer"
-           interface="org.opendaylight.transportpce.renderer.provisiondevice.OtnDeviceRendererService"/>
 
 </blueprint>