X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=servicehandler%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Fservicehandler%2Flisteners%2FRendererListenerImpl.java;h=f983d37745e172a30a9e4d0a6f19ef2ee2ff9b17;hb=56d1795b647693ec1d620d6aca2c4003e3b302ca;hp=d85dfc0df56d41186dba4a5346f42891c528f2ea;hpb=bb2fab18455b1d7a144f4fb649a37a247b888642;p=transportpce.git diff --git a/servicehandler/src/main/java/org/opendaylight/transportpce/servicehandler/listeners/RendererListenerImpl.java b/servicehandler/src/main/java/org/opendaylight/transportpce/servicehandler/listeners/RendererListenerImpl.java index d85dfc0df..f983d3774 100644 --- a/servicehandler/src/main/java/org/opendaylight/transportpce/servicehandler/listeners/RendererListenerImpl.java +++ b/servicehandler/src/main/java/org/opendaylight/transportpce/servicehandler/listeners/RendererListenerImpl.java @@ -8,6 +8,7 @@ package org.opendaylight.transportpce.servicehandler.listeners; import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; +import java.util.ArrayList; import java.util.List; import java.util.Map; import org.opendaylight.mdsal.binding.api.NotificationPublishService; @@ -18,20 +19,20 @@ import org.opendaylight.transportpce.pce.service.PathComputationService; import org.opendaylight.transportpce.servicehandler.ServiceInput; import org.opendaylight.transportpce.servicehandler.service.PCEServiceWrapper; import org.opendaylight.transportpce.servicehandler.service.ServiceDataStoreOperations; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkutils.rev220630.OtnLinkType; import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.RendererRpcResultSp; import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.TransportpceRendererListener; import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.renderer.rpc.result.sp.Link; import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.servicehandler.rev201125.ServiceRpcResultSh; import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.servicehandler.rev201125.ServiceRpcResultShBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.ServiceNotificationTypes; +import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev211210.ServiceNotificationTypes; import org.opendaylight.yang.gen.v1.http.org.openroadm.common.state.types.rev191129.State; import org.opendaylight.yang.gen.v1.http.org.openroadm.equipment.states.types.rev191129.AdminStates; -import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.list.Services; -import org.opendaylight.yang.gen.v1.http.transportpce.topology.rev220123.OtnLinkType; -import org.opendaylight.yang.gen.v1.nbi.notifications.rev210813.PublishNotificationProcessService; -import org.opendaylight.yang.gen.v1.nbi.notifications.rev210813.PublishNotificationProcessServiceBuilder; -import org.opendaylight.yang.gen.v1.nbi.notifications.rev210813.notification.process.service.ServiceAEndBuilder; -import org.opendaylight.yang.gen.v1.nbi.notifications.rev210813.notification.process.service.ServiceZEndBuilder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev211210.service.list.Services; +import org.opendaylight.yang.gen.v1.nbi.notifications.rev211013.PublishNotificationProcessService; +import org.opendaylight.yang.gen.v1.nbi.notifications.rev211013.PublishNotificationProcessServiceBuilder; +import org.opendaylight.yang.gen.v1.nbi.notifications.rev211013.notification.process.service.ServiceAEndBuilder; +import org.opendaylight.yang.gen.v1.nbi.notifications.rev211013.notification.process.service.ServiceZEndBuilder; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -183,8 +184,7 @@ public class RendererListenerImpl implements TransportpceRendererListener { sendNbiNotification(nbiNotificationBuilder .setResponseFailed("") .setMessage("Service implemented !") - .setOperationalState(org.opendaylight.yang.gen.v1.http - .org.openroadm.common.state.types.rev181130.State.InService) + .setOperationalState(State.InService) .build()); if (!tempService) { sendServiceHandlerNotification(notification, ServiceNotificationTypes.ServiceCreateResult); @@ -194,8 +194,7 @@ public class RendererListenerImpl implements TransportpceRendererListener { sendNbiNotification(nbiNotificationBuilder .setResponseFailed(serviceTemp + "Service status not updated in datastore !") .setMessage("ServiceCreate request failed ...") - .setOperationalState(org.opendaylight.yang.gen.v1.http - .org.openroadm.common.state.types.rev181130.State.OutOfService) + .setOperationalState(State.OutOfService) .build()); } } @@ -303,21 +302,33 @@ public class RendererListenerImpl implements TransportpceRendererListener { private void updateOtnTopology(RendererRpcResultSp notification, boolean isDeletion) { Link link = notification.getLink(); - List supportedLinkIds = notification.getLinkId(); - if (link == null && supportedLinkIds == null) { + if (link == null && notification.getLinkId() == null) { return; } - + List supportedLinkIds = null; + if (notification.getLinkId() != null) { + supportedLinkIds = new ArrayList<>(notification.getLinkId()); + } String serviceType = notification.getServiceType(); switch (serviceType) { case StringConstants.SERVICE_TYPE_OTU4: + case StringConstants.SERVICE_TYPE_OTUC2: + case StringConstants.SERVICE_TYPE_OTUC3: case StringConstants.SERVICE_TYPE_OTUC4: case StringConstants.SERVICE_TYPE_ODU4: + case StringConstants.SERVICE_TYPE_ODUC2: + case StringConstants.SERVICE_TYPE_ODUC3: case StringConstants.SERVICE_TYPE_ODUC4: Map otnLinkTypeMap = Map.of( StringConstants.SERVICE_TYPE_OTU4, OtnLinkType.OTU4, + // TODO: need to change it when OtnLinkType is updated with enum + StringConstants.SERVICE_TYPE_OTUC2, OtnLinkType.OTUC4, + StringConstants.SERVICE_TYPE_OTUC3, OtnLinkType.OTUC4, StringConstants.SERVICE_TYPE_OTUC4, OtnLinkType.OTUC4, StringConstants.SERVICE_TYPE_ODU4, OtnLinkType.ODTU4, + // TODO: need to change it when OtnLinkType is updated with enum + StringConstants.SERVICE_TYPE_ODUC2, OtnLinkType.ODUC4, + StringConstants.SERVICE_TYPE_ODUC3, OtnLinkType.ODUC4, StringConstants.SERVICE_TYPE_ODUC4, OtnLinkType.ODUC4); if (isDeletion) { LOG.info("updating otn-topology removing links");