import io.lighty.core.controller.api.LightyServices;
import java.util.Arrays;
import java.util.List;
+import org.opendaylight.mdsal.binding.api.NotificationService;
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;
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;
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;
import org.opendaylight.transportpce.tapi.impl.TapiProvider;
+import org.opendaylight.transportpce.tapi.listeners.TapiPceListenerImpl;
+import org.opendaylight.transportpce.tapi.listeners.TapiRendererListenerImpl;
+import org.opendaylight.transportpce.tapi.listeners.TapiServiceHandlerListenerImpl;
import org.opendaylight.transportpce.tapi.topology.TapiNetconfTopologyListener;
import org.opendaylight.transportpce.tapi.topology.TapiNetworkModelService;
import org.opendaylight.transportpce.tapi.topology.TapiNetworkModelServiceImpl;
-import org.opendaylight.transportpce.tapi.topology.TapiPortMappingListener;
import org.opendaylight.transportpce.tapi.topology.TapiNetworkUtilsImpl;
+import org.opendaylight.transportpce.tapi.topology.TapiPortMappingListener;
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.rev210618.TransportpceOlmService;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.tapinetworkutils.rev210408.TransportpceTapinetworkutilsService;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.TransportpceOlmService;
import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.OrgOpenroadmServiceService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* List of publisher topics.
*/
- private final List<String> publisherTopicList =
- Arrays.asList("PceListener", "ServiceHandlerOperations", "ServiceHandler", "RendererListener");
+ private final List<String> publisherServiceList = Arrays.asList("PceListener", "ServiceHandlerOperations",
+ "ServiceHandler", "RendererListener");
+ private final List<String> publisherAlarmList = Arrays.asList("ServiceListener");
public TransportPCEImpl(LightyServices lightyServices, boolean activateNbiNotification) {
LOG.info("Initializing transaction providers ...");
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);
+ TapiRendererListenerImpl tapiRendererListenerImpl = new TapiRendererListenerImpl(lightyServices
+ .getBindingDataBroker());
+ TapiPceListenerImpl tapiPceListenerImpl = new TapiPceListenerImpl(lightyServices.getBindingDataBroker());
+ TapiServiceHandlerListenerImpl tapiServiceHandlerListener = new TapiServiceHandlerListenerImpl(lightyServices
+ .getBindingDataBroker());
TransportpceTapinetworkutilsService tapiNetworkutilsServiceImpl = new TapiNetworkUtilsImpl(
networkTransaction);
TapiNetworkModelService tapiNetworkModelService = new TapiNetworkModelServiceImpl(
new TapiNetconfTopologyListener(tapiNetworkModelService);
TapiPortMappingListener tapiPortMappingListener =
new TapiPortMappingListener(tapiNetworkModelService);
+
tapiProvider = initTapi(lightyServices, servicehandler, networkTransaction, serviceDataStoreOperations,
- tapiNetConfTopologyListener, tapiPortMappingListener, tapiNetworkutilsServiceImpl);
- if(activateNbiNotification) {
+ tapiNetConfTopologyListener, tapiPortMappingListener, tapiNetworkutilsServiceImpl, tapiPceListenerImpl,
+ tapiRendererListenerImpl, tapiServiceHandlerListener, lightyServices.getNotificationService());
+ 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());
}
}
servicehandlerProvider.init();
LOG.info("Initializing tapi provider ...");
tapiProvider.init();
- if(nbiNotificationsProvider != null) {
+ if (nbiNotificationsProvider != null) {
LOG.info("Initializing nbi-notifications provider ...");
nbiNotificationsProvider.init();
}
return true;
}
- /**
- * Init tapi provider beans.
- *
- * @param lightyServices LightyServices
- * @param rendererServiceOperations RendererServiceOperations
- * @return TapiProvider instance
- */
private TapiProvider initTapi(LightyServices lightyServices, OrgOpenroadmServiceService servicehandler,
- NetworkTransactionService networkTransaction,
+ NetworkTransactionService networkTransactionService,
ServiceDataStoreOperations serviceDataStoreOperations,
TapiNetconfTopologyListener tapiNetConfTopologyListener,
TapiPortMappingListener tapiPortMappingListener,
- TransportpceTapinetworkutilsService tapiNetworkutilsServiceImpl) {
+ TransportpceTapinetworkutilsService tapiNetworkutilsServiceImpl,
+ TapiPceListenerImpl pceListenerImpl, TapiRendererListenerImpl rendererListenerImpl,
+ TapiServiceHandlerListenerImpl serviceHandlerListenerImpl,
+ NotificationService notificationService) {
return new TapiProvider(lightyServices.getBindingDataBroker(), lightyServices.getRpcProviderService(),
- servicehandler, serviceDataStoreOperations, new TapiListener(), networkTransaction,
- tapiNetConfTopologyListener, tapiPortMappingListener, tapiNetworkutilsServiceImpl);
+ servicehandler, serviceDataStoreOperations, new TapiListener(), networkTransactionService,
+ tapiNetConfTopologyListener, tapiPortMappingListener, tapiNetworkutilsServiceImpl, pceListenerImpl,
+ 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);
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);
portMappingVersion221, portMappingVersion121);
}
- /**
- * Init OpenRoadmInterfaces.
- *
- * @param mappingUtils MappingUtils
- * @return OpenRoadmInterfaces instance
- */
private OpenRoadmInterfaces initOpenRoadmInterfaces(MappingUtils mappingUtils) {
OpenRoadmInterfacesImpl121 openRoadmInterfacesImpl121 = new OpenRoadmInterfacesImpl121(
deviceTransactionManager);
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);
}
}