X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=lighty%2Fsrc%2Fmain%2Fjava%2Fio%2Flighty%2Fcontrollers%2Ftpce%2Fmodule%2FTransportPCEImpl.java;h=579bcebc16515441c417a965cdee902cb45b7586;hb=02120b6f30aece5acfa0fba69419c6b65f0f1659;hp=ced4589268e8cc441a84f9dfbdb1a6aeacfcf980;hpb=204582458696b942c10215fbc3cf4af4f66f3c60;p=transportpce.git 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 ced458926..579bcebc1 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 @@ -16,6 +16,7 @@ import org.opendaylight.transportpce.common.crossconnect.CrossConnect; import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl; import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl121; import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl221; +import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl710; import org.opendaylight.transportpce.common.device.DeviceTransactionManagerImpl; import org.opendaylight.transportpce.common.mapping.MappingUtils; import org.opendaylight.transportpce.common.mapping.MappingUtilsImpl; @@ -60,6 +61,7 @@ import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterf import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterfaceFactory; // Adding OTN interface import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmOtnInterface221; +import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmOtnInterface710; import org.opendaylight.transportpce.renderer.provisiondevice.DeviceRendererService; import org.opendaylight.transportpce.renderer.provisiondevice.DeviceRendererServiceImpl; import org.opendaylight.transportpce.renderer.provisiondevice.OtnDeviceRendererService; @@ -73,6 +75,7 @@ import org.opendaylight.transportpce.servicehandler.impl.ServicehandlerProvider; import org.opendaylight.transportpce.servicehandler.listeners.NetworkModelListenerImpl; import org.opendaylight.transportpce.servicehandler.listeners.PceListenerImpl; import org.opendaylight.transportpce.servicehandler.listeners.RendererListenerImpl; +import org.opendaylight.transportpce.servicehandler.listeners.ServiceListener; import org.opendaylight.transportpce.servicehandler.service.ServiceDataStoreOperations; import org.opendaylight.transportpce.servicehandler.service.ServiceDataStoreOperationsImpl; import org.opendaylight.transportpce.tapi.R2RTapiLinkDiscovery; @@ -85,9 +88,10 @@ import org.opendaylight.transportpce.tapi.topology.TapiNetworkModelService; import org.opendaylight.transportpce.tapi.topology.TapiNetworkModelServiceImpl; import org.opendaylight.transportpce.tapi.topology.TapiNetworkUtilsImpl; import org.opendaylight.transportpce.tapi.topology.TapiPortMappingListener; +import org.opendaylight.transportpce.tapi.utils.TapiLink; import org.opendaylight.transportpce.tapi.utils.TapiListener; import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkutils.rev170818.TransportpceNetworkutilsService; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.TransportpceOlmService; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.TransportpceOlmService; import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.tapinetworkutils.rev210408.TransportpceTapinetworkutilsService; import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.OrgOpenroadmServiceService; import org.slf4j.Logger; @@ -119,10 +123,12 @@ public class TransportPCEImpl extends AbstractLightyModule implements TransportP /** * List of publisher topics. */ - private final List publisherTopicList = - Arrays.asList("PceListener", "ServiceHandlerOperations", "ServiceHandler", "RendererListener"); + private final List publisherServiceList = Arrays.asList("PceListener", "ServiceHandlerOperations", + "ServiceHandler", "RendererListener"); + private final List publisherAlarmList = Arrays.asList("ServiceListener"); - public TransportPCEImpl(LightyServices lightyServices, boolean activateNbiNotification) { + public TransportPCEImpl(LightyServices lightyServices, boolean activateNbiNotification, + String olmtimer1, String olmtimer2) { LOG.info("Initializing transaction providers ..."); deviceTransactionManager = new DeviceTransactionManagerImpl(lightyServices.getBindingMountPointService(), MAX_DURATION_TO_SUBMIT_TRANSACTION); @@ -163,7 +169,7 @@ public class TransportPCEImpl extends AbstractLightyModule implements TransportP LOG.info("Creating OLM beans ..."); CrossConnect crossConnect = initCrossConnect(mappingUtils); PowerMgmt powerMgmt = new PowerMgmtImpl(lightyServices.getBindingDataBroker(), openRoadmInterfaces, - crossConnect, deviceTransactionManager); + crossConnect, deviceTransactionManager, olmtimer1, olmtimer2); OlmPowerService olmPowerService = new OlmPowerServiceImpl(lightyServices.getBindingDataBroker(), powerMgmt, deviceTransactionManager, portMapping, mappingUtils, openRoadmInterfaces); olmProvider = new OlmProvider(lightyServices.getRpcProviderService(), olmPowerService); @@ -178,40 +184,42 @@ public class TransportPCEImpl extends AbstractLightyModule implements TransportP OtnDeviceRendererService otnDeviceRendererService = new OtnDeviceRendererServiceImpl(openRoadmInterfaceFactory, crossConnect, openRoadmInterfaces, deviceTransactionManager, networkModelService); rendererProvider = initRenderer(lightyServices, olmPowerServiceRpc, deviceRendererService, - otnDeviceRendererService); + otnDeviceRendererService, portMapping); LOG.info("Creating service-handler beans ..."); RendererServiceOperations rendererServiceOperations = new RendererServiceOperationsImpl(deviceRendererService, otnDeviceRendererService, olmPowerServiceRpc, lightyServices.getBindingDataBroker(), - lightyServices.getBindingNotificationPublishService()); + lightyServices.getBindingNotificationPublishService(), portMapping); ServiceDataStoreOperations serviceDataStoreOperations = new ServiceDataStoreOperationsImpl( lightyServices.getBindingDataBroker()); RendererListenerImpl rendererListenerImpl = new RendererListenerImpl(pathComputationService, - lightyServices.getBindingNotificationPublishService()); + lightyServices.getBindingNotificationPublishService(), networkModelService); PceListenerImpl pceListenerImpl = new PceListenerImpl(rendererServiceOperations, pathComputationService, lightyServices.getBindingNotificationPublishService(), serviceDataStoreOperations); + ServiceListener serviceListener = new ServiceListener(lightyServices.getBindingDataBroker(), + lightyServices.getBindingNotificationPublishService()); NetworkModelListenerImpl networkModelListenerImpl = new NetworkModelListenerImpl( lightyServices.getBindingNotificationPublishService(), serviceDataStoreOperations); ServicehandlerImpl servicehandler = new ServicehandlerImpl(lightyServices.getBindingDataBroker(), pathComputationService, rendererServiceOperations, lightyServices.getBindingNotificationPublishService(), - pceListenerImpl, rendererListenerImpl, networkModelListenerImpl, serviceDataStoreOperations, "N/A"); + pceListenerImpl, rendererListenerImpl, networkModelListenerImpl, serviceDataStoreOperations); servicehandlerProvider = new ServicehandlerProvider(lightyServices.getBindingDataBroker(), lightyServices.getRpcProviderService(), lightyServices.getNotificationService(), - serviceDataStoreOperations, pceListenerImpl, rendererListenerImpl, networkModelListenerImpl, - servicehandler); + serviceDataStoreOperations, pceListenerImpl, serviceListener, rendererListenerImpl, + networkModelListenerImpl, servicehandler); LOG.info("Creating tapi beans ..."); - R2RTapiLinkDiscovery tapilinkDiscoveryImpl = new R2RTapiLinkDiscovery(lightyServices.getBindingDataBroker(), - deviceTransactionManager); + R2RTapiLinkDiscovery tapilinkDiscoveryImpl = new R2RTapiLinkDiscovery(networkTransaction, + deviceTransactionManager, tapiLink); TapiRendererListenerImpl tapiRendererListenerImpl = new TapiRendererListenerImpl(lightyServices .getBindingDataBroker()); TapiPceListenerImpl tapiPceListenerImpl = new TapiPceListenerImpl(lightyServices.getBindingDataBroker()); TapiServiceHandlerListenerImpl tapiServiceHandlerListener = new TapiServiceHandlerListenerImpl(lightyServices .getBindingDataBroker()); TransportpceTapinetworkutilsService tapiNetworkutilsServiceImpl = new TapiNetworkUtilsImpl( - networkTransaction); + networkTransaction, tapiLink); TapiNetworkModelService tapiNetworkModelService = new TapiNetworkModelServiceImpl( - tapilinkDiscoveryImpl, networkTransaction); + tapilinkDiscoveryImpl, networkTransaction, tapiLink); TapiNetconfTopologyListener tapiNetConfTopologyListener = new TapiNetconfTopologyListener(tapiNetworkModelService); TapiPortMappingListener tapiPortMappingListener = @@ -223,7 +231,7 @@ public class TransportPCEImpl extends AbstractLightyModule implements TransportP if (activateNbiNotification) { LOG.info("Creating nbi-notifications beans ..."); nbiNotificationsProvider = new NbiNotificationsProvider( - publisherTopicList, null, null, lightyServices.getRpcProviderService(), + publisherServiceList, publisherAlarmList, null, null, lightyServices.getRpcProviderService(), lightyServices.getNotificationService(), lightyServices.getAdapterContext().currentSerializer()); } } @@ -272,13 +280,6 @@ public class TransportPCEImpl extends AbstractLightyModule implements TransportP return true; } - /** - * Init tapi provider beans. - * - * @param lightyServices LightyServices - * @param rendererServiceOperations RendererServiceOperations - * @return TapiProvider instance - */ private TapiProvider initTapi(LightyServices lightyServices, OrgOpenroadmServiceService servicehandler, NetworkTransactionService networkTransactionService, ServiceDataStoreOperations serviceDataStoreOperations, @@ -294,34 +295,19 @@ public class TransportPCEImpl extends AbstractLightyModule implements TransportP rendererListenerImpl, serviceHandlerListenerImpl, notificationService); } - /** - * Init renderer provider beans. - * - * @param lightyServices LightyServices - * @param olmPowerServiceRpc TransportpceOlmService - * @param deviceRendererService DeviceRendererService - * @param otnDeviceRendererService OtnDeviceRendererService - * @return RendererProvider instance - */ private RendererProvider initRenderer(LightyServices lightyServices, TransportpceOlmService olmPowerServiceRpc, - DeviceRendererService deviceRendererService, OtnDeviceRendererService otnDeviceRendererService) { + DeviceRendererService deviceRendererService, OtnDeviceRendererService otnDeviceRendererService, + PortMapping portMapping) { DeviceRendererRPCImpl deviceRendererRPC = new DeviceRendererRPCImpl(deviceRendererService, otnDeviceRendererService); RendererServiceOperationsImpl rendererServiceOperations = new RendererServiceOperationsImpl( deviceRendererService, otnDeviceRendererService, olmPowerServiceRpc, - lightyServices.getBindingDataBroker(), lightyServices.getBindingNotificationPublishService()); + lightyServices.getBindingDataBroker(), lightyServices.getBindingNotificationPublishService(), + portMapping); return new RendererProvider(lightyServices.getRpcProviderService(), deviceRendererRPC, rendererServiceOperations); } - /** - * Init OpenRoadmInterfaceFactory. - * - * @param mappingUtils MappingUtils - * @param openRoadmInterfaces OpenRoadmInterfaces - * @param portMapping PortMapping - * @return OpenRoadmInterfaceFactory instance - */ private OpenRoadmInterfaceFactory initOpenRoadmFactory(MappingUtils mappingUtils, OpenRoadmInterfaces openRoadmInterfaces, PortMapping portMapping) { OpenRoadmInterface121 openRoadmInterface121 = new OpenRoadmInterface121(portMapping, openRoadmInterfaces); @@ -329,17 +315,12 @@ public class TransportPCEImpl extends AbstractLightyModule implements TransportP OpenRoadmInterface710 openRoadmInterface710 = new OpenRoadmInterface710(portMapping, openRoadmInterfaces); OpenRoadmOtnInterface221 openRoadmOtnInterface221 = new OpenRoadmOtnInterface221(portMapping, openRoadmInterfaces); + OpenRoadmOtnInterface710 openRoadmOtnInterface710 = new OpenRoadmOtnInterface710(portMapping, + openRoadmInterfaces); return new OpenRoadmInterfaceFactory(mappingUtils, openRoadmInterface121, openRoadmInterface221, - openRoadmInterface710, openRoadmOtnInterface221); + openRoadmInterface710, openRoadmOtnInterface221, openRoadmOtnInterface710); } - /** - * Init PortMapping. - * - * @param lightyServices LightyServices - * @param openRoadmInterfaces OpenRoadmInterfaces - * @return PortMapping instance - */ private PortMapping initPortMapping(LightyServices lightyServices, OpenRoadmInterfaces openRoadmInterfaces) { PortMappingVersion710 portMappingVersion710 = new PortMappingVersion710(lightyServices.getBindingDataBroker(), deviceTransactionManager, openRoadmInterfaces); @@ -351,12 +332,6 @@ public class TransportPCEImpl extends AbstractLightyModule implements TransportP portMappingVersion221, portMappingVersion121); } - /** - * Init OpenRoadmInterfaces. - * - * @param mappingUtils MappingUtils - * @return OpenRoadmInterfaces instance - */ private OpenRoadmInterfaces initOpenRoadmInterfaces(MappingUtils mappingUtils) { OpenRoadmInterfacesImpl121 openRoadmInterfacesImpl121 = new OpenRoadmInterfacesImpl121( deviceTransactionManager); @@ -368,15 +343,11 @@ public class TransportPCEImpl extends AbstractLightyModule implements TransportP openRoadmInterfacesImpl221, openRoadmInterfacesImpl710); } - /** - * Init CrossConnect. - * - * @param mappingUtils MappingUtils - * @return CrossConnect instance - */ private CrossConnect initCrossConnect(MappingUtils mappingUtils) { CrossConnectImpl121 crossConnectImpl121 = new CrossConnectImpl121(deviceTransactionManager); CrossConnectImpl221 crossConnectImpl221 = new CrossConnectImpl221(deviceTransactionManager); - return new CrossConnectImpl(deviceTransactionManager, mappingUtils, crossConnectImpl121, crossConnectImpl221); + CrossConnectImpl710 crossConnectImpl710 = new CrossConnectImpl710(deviceTransactionManager); + return new CrossConnectImpl(deviceTransactionManager, mappingUtils, crossConnectImpl121, crossConnectImpl221, + crossConnectImpl710); } }