ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE";
+ revision 2021-09-15 {
+ description
+ "Version 1.6.4.
+ Add list of link-id to the notification";
+ }
revision 2021-06-18 {
- description
- "Version 1.6.3.
- Add optical-renderer-nodes to the notification";
- }
+ description
+ "Version 1.6.3.
+ Add optical-renderer-nodes to the notification";
+ }
revision 2020-11-25 {
description
"Version 1.6.2";
}
grouping link-for-notif {
+ description
+ "In most of the cases, only 2 link-termination-points exists.
+ It reveals that the service is supported by a single otn-link
+ to configure. Its properties can be easily transmited by this way.";
container a-termination {
leaf node-id {
type string;
container link {
uses link-for-notif;
}
+ leaf-list link-id {
+ type string;
+ description
+ "when more than 2 link-termination-points exists,
+ it reveals that the service is supported by multiple
+ links (typically, OTU4). In such a case, it is more appropriated
+ to transmit the list of supported links with their link-id";
+ }
leaf service-type {
type string;
}
*/
package org.opendaylight.transportpce.networkmodel.service;
+import java.util.List;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210426.mapping.Mapping;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.renderer.rpc.result.sp.Link;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.renderer.rpc.result.sp.Link;
import org.opendaylight.yang.gen.v1.http.transportpce.topology.rev210511.OtnLinkType;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.NetconfNodeConnectionStatus;
import org.opendaylight.yangtools.yang.common.Uint32;
* @param maxTribSoltNb
* Last contiguous trib slot number allocated by the service
* @param isDeletion
- * True indicates if the low-order otn service must be deleted
+ * True indicates if the low-order otn service must be deleted
*/
void updateOtnLinks(Link link, Uint32 serviceRate, Short tribPortNb, Short minTribSoltNb, Short maxTribSoltNb,
boolean isDeletion);
*
* @param link
* link containing termination points to be updated
+ * @param supportedLinks
+ * list of link-id supported the service (used when more than one supported link)
* @param isDeletion
- * True indicates if the low-order otn service must be deleted
+ * True indicates if the low-order otn service must be deleted
*/
- void updateOtnLinks(Link link, boolean isDeletion);
+ void updateOtnLinks(Link link, List<String> supportedLinks, boolean isDeletion);
}
@Override
public void updateOtnLinks(
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.renderer.rpc.result.sp.Link
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.renderer.rpc.result.sp.Link
notifLink, Uint32 serviceRate, Short tribPortNb, Short minTribSoltNb, Short maxTribSlotNb,
boolean isDeletion) {
@Override
public void updateOtnLinks(
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.renderer.rpc.result.sp.Link
- notifLink, boolean isDeletion) {
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.renderer.rpc.result.sp.Link
+ notifLink, List<String> suppLinks, boolean isDeletion) {
List<LinkId> linkIdList = new ArrayList<>();
- String nodeTopoA = convertNetconfNodeIdToTopoNodeId(notifLink.getATermination().getNodeId(),
- notifLink.getATermination().getTpId());
- String nodeTopoZ = convertNetconfNodeIdToTopoNodeId(notifLink.getZTermination().getNodeId(),
- notifLink.getZTermination().getTpId());
- linkIdList.add(LinkIdUtil.buildOtnLinkId(nodeTopoA, notifLink.getATermination().getTpId(),
- nodeTopoZ, notifLink.getZTermination().getTpId(), OtnLinkType.OTU4.getName()));
- linkIdList.add(LinkIdUtil.buildOtnLinkId(nodeTopoZ, notifLink.getZTermination().getTpId(),
- nodeTopoA, notifLink.getATermination().getTpId(), OtnLinkType.OTU4.getName()));
+ if (notifLink != null) {
+ String nodeTopoA = convertNetconfNodeIdToTopoNodeId(notifLink.getATermination().getNodeId(),
+ notifLink.getATermination().getTpId());
+ String nodeTopoZ = convertNetconfNodeIdToTopoNodeId(notifLink.getZTermination().getNodeId(),
+ notifLink.getZTermination().getTpId());
+ linkIdList.add(LinkIdUtil.buildOtnLinkId(nodeTopoA, notifLink.getATermination().getTpId(),
+ nodeTopoZ, notifLink.getZTermination().getTpId(), OtnLinkType.OTU4.getName()));
+ linkIdList.add(LinkIdUtil.buildOtnLinkId(nodeTopoZ, notifLink.getZTermination().getTpId(),
+ nodeTopoA, notifLink.getATermination().getTpId(), OtnLinkType.OTU4.getName()));
+ } else if (suppLinks != null) {
+ suppLinks.forEach(lk -> linkIdList.add(new LinkId(lk)));
+ } else {
+ LOG.error("Impossible to determine supported otn links without correct input data");
+ }
List<Link> supportedOtu4links = getOtnLinks(linkIdList);
TopologyShard otnTopologyShard = OpenRoadmOtnTopology.updateOtnLinks(supportedOtu4links, isDeletion);
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev210618.ServicePathInputBuilder;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.ServicePowerSetupInput;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.ServicePowerSetupInputBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteOutput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteOutputBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestOutput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestOutputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteOutputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestOutputBuilder;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.configuration.response.common.ConfigurationResponseCommon;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.configuration.response.common.ConfigurationResponseCommonBuilder;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.types.rev181019.FrequencyGHz;
import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.path.description.atoz.direction.AToZ;
import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.path.description.ztoa.direction.ZToA;
import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.pce.resource.resource.Resource;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.pce.resource.resource.resource.Link;
import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.pce.resource.resource.resource.TerminationPoint;
import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev210618.optical.renderer.nodes.Nodes;
import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev210618.optical.renderer.nodes.NodesBuilder;
import org.slf4j.LoggerFactory;
-
public final class ModelMappingUtils {
private static final Logger LOG = LoggerFactory.getLogger(ModelMappingUtils.class);
return new ServicePathInputBuilder().setServiceName(serviceName).build();
}
+ public static List<String> getLinksFromServicePathDescription(PathDescription pathDescription) {
+ List<String> linkidList = new ArrayList<>();
+ pathDescription.getAToZDirection().getAToZ().values().stream()
+ .filter(lk -> "Link".equals(lk.getResource().getResource().implementedInterface().getSimpleName()))
+ .forEach(rsc -> {
+ Link link = (Link) rsc.getResource().getResource();
+ linkidList.add(link.getLinkId());
+ });
+ pathDescription.getZToADirection().getZToA().values().stream()
+ .filter(lk -> "Link".equals(lk.getResource().getResource().implementedInterface().getSimpleName()))
+ .forEach(rsc -> {
+ Link link = (Link) rsc.getResource().getResource();
+ linkidList.add(link.getLinkId());
+ });
+ return linkidList;
+ }
+
private static NodeLists getNodesListZtoA(Iterator<ZToA> iterator) {
Map<Integer, NodeIdPair> treeMap = new TreeMap<>();
List<Nodes> olmList = new ArrayList<>();
import org.opendaylight.transportpce.renderer.rpcs.DeviceRendererRPCImpl;
import org.opendaylight.transportpce.renderer.rpcs.TransportPCEServicePathRPCImpl;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev210618.TransportpceDeviceRendererService;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.TransportpceRendererService;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.TransportpceRendererService;
import org.opendaylight.yangtools.concepts.ObjectRegistration;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
package org.opendaylight.transportpce.renderer.provisiondevice;
import com.google.common.util.concurrent.ListenableFuture;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteOutput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestOutput;
import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.list.Services;
public interface RendererServiceOperations {
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.TransportpceOlmService;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.get.pm.output.Measurements;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210426.mapping.Mapping;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.RendererRpcResultSp;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.RendererRpcResultSpBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteOutput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestOutput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.link._for.notif.ATerminationBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.link._for.notif.ZTerminationBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.renderer.rpc.result.sp.Link;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.renderer.rpc.result.sp.LinkBuilder;
+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.RendererRpcResultSpBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.link._for.notif.ATerminationBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.link._for.notif.ZTerminationBuilder;
+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.renderer.rev210915.renderer.rpc.result.sp.LinkBuilder;
import org.opendaylight.yang.gen.v1.http.org.openroadm.device.types.rev191129.NodeTypes;
import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev161014.PmGranularity;
import org.opendaylight.yang.gen.v1.http.org.openroadm.resource.types.rev161014.ResourceTypeEnum;
sendNotificationsWithPathDescription(ServicePathNotificationTypes.ServiceImplementationRequest,
input.getServiceName(), RpcStatusEx.Successful, OPERATION_SUCCESSFUL, input.getPathDescription(),
- notifLink, serviceType);
+ notifLink, null, serviceType);
return true;
}
Link notifLink = createLinkForNotif(otnLinkTerminationPoints);
sendNotificationsWithPathDescription(ServicePathNotificationTypes.ServiceDelete,
- serviceName, RpcStatusEx.Successful, OPERATION_SUCCESSFUL, pathDescription, notifLink, serviceType);
+ serviceName, RpcStatusEx.Successful, OPERATION_SUCCESSFUL, pathDescription, notifLink, null, serviceType);
return true;
}
List<LinkTp> otnLinkTerminationPoints = new ArrayList<>();
renderingResults.forEach(rr -> otnLinkTerminationPoints.addAll(rr.getOtnLinkTps()));
Link notifLink = createLinkForNotif(otnLinkTerminationPoints);
+ List<String> supportedLinks = (notifLink == null && !otnLinkTerminationPoints.isEmpty())
+ ? ModelMappingUtils.getLinksFromServicePathDescription(input.getPathDescription())
+ : null;
sendNotificationsWithPathDescription(ServicePathNotificationTypes.ServiceImplementationRequest,
input.getServiceName(), RpcStatusEx.Successful, OPERATION_SUCCESSFUL, input.getPathDescription(),
- notifLink, serviceType);
+ notifLink, supportedLinks, serviceType);
return true;
}
List<LinkTp> otnLinkTerminationPoints = new ArrayList<>();
renderingResults.forEach(rr -> otnLinkTerminationPoints.addAll(rr.getOtnLinkTps()));
Link notifLink = createLinkForNotif(otnLinkTerminationPoints);
+ List<String> supportedLinks = (notifLink == null && !otnLinkTerminationPoints.isEmpty())
+ ? ModelMappingUtils.getLinksFromServicePathDescription(pathDescription)
+ : null;
sendNotificationsWithPathDescription(ServicePathNotificationTypes.ServiceDelete,
- serviceName, RpcStatusEx.Successful, OPERATION_SUCCESSFUL, pathDescription, notifLink, serviceType);
+ serviceName, RpcStatusEx.Successful, OPERATION_SUCCESSFUL, pathDescription, notifLink, supportedLinks,
+ serviceType);
return true;
}
private void sendNotifications(ServicePathNotificationTypes servicePathNotificationTypes, String serviceName,
RpcStatusEx rpcStatusEx, String message) {
Notification notification = buildNotification(servicePathNotificationTypes, serviceName, rpcStatusEx, message,
- null, null, null);
+ null, null, null, null);
send(notification);
}
*/
private void sendNotificationsWithPathDescription(ServicePathNotificationTypes servicePathNotificationTypes,
String serviceName, RpcStatusEx rpcStatusEx, String message, PathDescription pathDescription,
- Link notifLink, String serviceType) {
+ Link notifLink, List<String> supportedLinks, String serviceType) {
Notification notification = buildNotification(servicePathNotificationTypes, serviceName, rpcStatusEx, message,
- pathDescription, notifLink, serviceType);
+ pathDescription, notifLink, supportedLinks, serviceType);
send(notification);
}
*/
private RendererRpcResultSp buildNotification(ServicePathNotificationTypes servicePathNotificationTypes,
String serviceName, RpcStatusEx rpcStatusEx, String message, PathDescription pathDescription,
- Link notifLink, String serviceType) {
+ Link notifLink, List<String> supportedLinks, String serviceType) {
RendererRpcResultSpBuilder builder = new RendererRpcResultSpBuilder()
.setNotificationType(servicePathNotificationTypes).setServiceName(serviceName).setStatus(rpcStatusEx)
.setStatusMessage(message)
if (notifLink != null) {
builder.setLink(notifLink);
}
+ if (supportedLinks != null) {
+ builder.setLinkId(supportedLinks);
+ }
return builder.build();
}
import java.util.concurrent.ExecutionException;
import org.opendaylight.transportpce.renderer.ModelMappingUtils;
import org.opendaylight.transportpce.renderer.provisiondevice.RendererServiceOperations;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteOutput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestOutput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.TransportpceRendererService;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.TransportpceRendererService;
import org.opendaylight.yangtools.yang.common.RpcResult;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.opendaylight.transportpce.test.stub.MountPointStub;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.ServicePowerTurndownOutputBuilder;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.TransportpceOlmService;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInputBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteOutput;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.ConnectionType;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.ServiceAEnd;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.ServiceAEndBuilder;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.TransportpceOlmService;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.get.pm.output.Measurements;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.get.pm.output.MeasurementsBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestOutput;
import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev161014.PmGranularity;
import org.opendaylight.yang.gen.v1.http.org.openroadm.resource.types.rev161014.ResourceTypeEnum;
import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev210618.olm.get.pm.input.ResourceIdentifierBuilder;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev210618.RendererRollbackInputBuilder;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev210618.ServicePathInput;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev210618.ServicePathInputBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestInputBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.service.implementation.request.input.PathDescription;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.service.implementation.request.input.PathDescriptionBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.service.implementation.request.input.ServiceAEndBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.service.implementation.request.input.ServiceZEndBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestInputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.service.implementation.request.input.PathDescription;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.service.implementation.request.input.PathDescriptionBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.service.implementation.request.input.ServiceAEndBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.service.implementation.request.input.ServiceZEndBuilder;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.ConnectionType;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.port.PortBuilder;
import org.opendaylight.yang.gen.v1.http.org.openroadm.service.format.rev190531.ServiceFormat;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.path.computation.request.input.ServiceZEnd;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.path.computation.request.input.ServiceZEndBuilder;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.service.path.rpc.result.PathDescription;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInputBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestInputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestInputBuilder;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.node.types.rev181130.NodeIdType;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.configuration.response.common.ConfigurationResponseCommon;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.configuration.response.common.ConfigurationResponseCommonBuilder;
} else {
serviceImplementationRequestInputBuilder.setServiceName(input.getServiceName());
}
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.service.implementation
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.service.implementation
.request.input.ServiceAEndBuilder serviceAEnd = new org.opendaylight.yang.gen.v1.http.org.opendaylight
- .transportpce.renderer.rev210618.service.implementation.request.input.ServiceAEndBuilder();
+ .transportpce.renderer.rev210915.service.implementation.request.input.ServiceAEndBuilder();
serviceAEnd.setServiceFormat(input.getServiceAEnd().getServiceFormat())
.setServiceRate(input.getServiceAEnd().getServiceRate())
.setRxDirection(new org.opendaylight.yang.gen.v1.http.org
.transportpce.b.c._interface.service.types.rev200128.service.endpoint.sp.RxDirectionBuilder()
.setPort(input.getServiceAEnd().getRxDirection().getPort()).build());
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.service.implementation
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.service.implementation
.request.input.ServiceZEndBuilder serviceZEnd = new org.opendaylight.yang.gen.v1.http.org.opendaylight
- .transportpce.renderer.rev210618.service.implementation.request.input.ServiceZEndBuilder();
+ .transportpce.renderer.rev210915.service.implementation.request.input.ServiceZEndBuilder();
serviceZEnd.setServiceFormat(input.getServiceZEnd().getServiceFormat())
.setServiceRate(input.getServiceZEnd().getServiceRate())
.setOtuServiceRate(getOtuServiceRate(input.getServiceZEnd().getOtuServiceRate()))
.setConnectionType(input.getConnectionType())
.setServiceHandlerHeader(
new ServiceHandlerHeaderBuilder().setRequestId(input.getSdncRequestHeader().getRequestId()).build());
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.service.implementation
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.service.implementation
.request.input.PathDescriptionBuilder pathDescBuilder = new org.opendaylight.yang.gen.v1.http.org
- .opendaylight.transportpce.renderer.rev210618.service.implementation.request.input
+ .opendaylight.transportpce.renderer.rev210915.service.implementation.request.input
.PathDescriptionBuilder();
pathDescBuilder
.setAToZDirection(pathDescription.getAToZDirection())
return null;
}
- public static org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ public static org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.ServiceDeleteInput createServiceDeleteInput(ServiceInput serviceInput) {
ServiceDeleteInputBuilder builder = new ServiceDeleteInputBuilder()
.setServiceName(serviceInput.getServiceName())
return builder.build();
}
- public static org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ public static org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.ServiceDeleteInput createServiceDeleteInput(ServiceRerouteInput serviceRerouteinput, Services services) {
ServiceDeleteInputBuilder builder = new ServiceDeleteInputBuilder()
.setServiceName(serviceRerouteinput.getServiceName())
return builder.build();
}
- public static org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ public static org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.ServiceDeleteInput createServiceDeleteInput(ServiceRestorationInput serviceRestorationInput,
Services services) {
ServiceDeleteInputBuilder builder = new ServiceDeleteInputBuilder()
return builder.build();
}
- public static org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInput
+ public static org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInput
createServiceDeleteInput(ServiceReconfigureInput serviceReconfigureInput) {
String serviceName = serviceReconfigureInput.getServiceName();
ServiceDeleteInputBuilder builder = new ServiceDeleteInputBuilder()
this.rendererListenerImpl.setserviceDataStoreOperations(serviceDataStoreOperations);
this.rendererListenerImpl.setServiceInput(new ServiceInput(input));
this.networkModelListenerImpl.setserviceDataStoreOperations(serviceDataStoreOperations);
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
- .ServiceDeleteInput serviceDeleteInput =
- ModelMappingUtils.createServiceDeleteInput(new ServiceInput(input));
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteOutput output =
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInput
+ serviceDeleteInput = ModelMappingUtils.createServiceDeleteInput(new ServiceInput(input));
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteOutput output =
this.rendererServiceWrapper.performRenderer(
serviceDeleteInput, ServiceNotificationTypes.ServiceDeleteResult, service);
this.rendererListenerImpl.setserviceDataStoreOperations(serviceDataStoreOperations);
this.rendererListenerImpl.setServiceInput(new ServiceInput(input));
this.networkModelListenerImpl.setserviceDataStoreOperations(serviceDataStoreOperations);
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.ServiceDeleteInput serviceDeleteInput =
ModelMappingUtils.createServiceDeleteInput(new ServiceInput(input));
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.ServiceDeleteOutput output = this.rendererServiceWrapper.performRenderer(serviceDeleteInput,
ServiceNotificationTypes.ServiceDeleteResult, null);
if (output == null) {
this.rendererListenerImpl.setServiceInput(serviceInput);
this.rendererListenerImpl.setserviceDataStoreOperations(this.serviceDataStoreOperations);
this.networkModelListenerImpl.setserviceDataStoreOperations(serviceDataStoreOperations);
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.ServiceDeleteInput serviceDeleteInput = ModelMappingUtils.createServiceDeleteInput(
new ServiceInput(deleteInputBldr.build()));
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.ServiceDeleteOutput output = this.rendererServiceWrapper.performRenderer(serviceDeleteInput,
ServiceNotificationTypes.ServiceDeleteResult, null);
if (output == null) {
this.rendererListenerImpl.setServiceInput(serviceInput);
this.rendererListenerImpl.setserviceDataStoreOperations(this.serviceDataStoreOperations);
this.networkModelListenerImpl.setserviceDataStoreOperations(serviceDataStoreOperations);
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.ServiceDeleteInput serviceDeleteInput = ModelMappingUtils.createServiceDeleteInput(
new ServiceInput(deleteInputBldr.build()));
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.ServiceDeleteOutput output = this.rendererServiceWrapper.performRenderer(serviceDeleteInput,
ServiceNotificationTypes.ServiceDeleteResult, null);
if (output == null) {
this.rendererListenerImpl.setServiceInput(new ServiceInput(input));
this.rendererListenerImpl.setTempService(true);
this.networkModelListenerImpl.setserviceDataStoreOperations(serviceDataStoreOperations);
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteOutput output =
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteOutput output =
this.rendererServiceWrapper.performRenderer(input, ServiceNotificationTypes.ServiceDeleteResult);
if (output == null) {
LOG.error(TEMP_SERVICE_DELETE_MSG, LogMessages.RENDERER_DELETE_FAILED);
import org.opendaylight.transportpce.servicehandler.service.ServiceDataStoreOperations;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkmodel.rev201116.TransportpceNetworkmodelListener;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.TransportpcePceListener;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.TransportpceRendererListener;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.TransportpceRendererListener;
import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.OrgOpenroadmServiceService;
import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.ServiceList;
import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.list.Services;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.TransportpcePceListener;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.service.path.rpc.result.PathDescription;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.service.path.rpc.result.PathDescriptionBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestInput;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.state.types.rev181130.State;
import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.list.Services;
import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.RpcStatusEx;
package org.opendaylight.transportpce.servicehandler.listeners;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
+import java.util.List;
import java.util.Map;
import org.opendaylight.mdsal.binding.api.NotificationPublishService;
import org.opendaylight.transportpce.common.OperationResult;
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.renderer.rev210618.RendererRpcResultSp;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.TransportpceRendererListener;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.renderer.rpc.result.sp.Link;
+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;
private void updateOtnTopology(RendererRpcResultSp notification, boolean isDeletion) {
Link link = notification.getLink();
- if (link == null) {
+ List<String> supportedLinkIds = notification.getLinkId();
+ if (link == null && supportedLinkIds == null) {
return;
}
tribPort, minTribSlot, maxTribSlot, isDeletion);
break;
case StringConstants.SERVICE_TYPE_100GE_S:
- this.networkModelService.updateOtnLinks(link, isDeletion);
+ this.networkModelService.updateOtnLinks(link, supportedLinkIds, isDeletion);
break;
default:
LOG.warn("service-type {} not managed yet", serviceType);
import org.opendaylight.mdsal.binding.api.NotificationPublishService;
import org.opendaylight.transportpce.common.ResponseCodes;
import org.opendaylight.transportpce.renderer.provisiondevice.RendererServiceOperations;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInputBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteOutput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteOutputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteOutputBuilder;
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;
Services services = new ServicesBuilder()
.withKey(new ServicesKey("reroute"))
.setSdncRequestHeader(new SdncRequestHeaderBuilder().setRequestId("123").build()).build();
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInput
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInput
serviceDeleteInput =
ModelMappingUtils.createServiceDeleteInput(serviceRerouteinput, services);
Assert.assertEquals("reroute", serviceDeleteInput.getServiceName());
public void createServiceDeleteInputWithServiceReconfigureInput() {
ServiceReconfigureInput serviceReconfigureInput = new ServiceReconfigureInputBuilder()
.setServiceName("reconf").build();
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInput
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInput
serviceDeleteInput =
ModelMappingUtils.createServiceDeleteInput(serviceReconfigureInput);
Assert.assertEquals("reconf", serviceDeleteInput.getServiceName());
.setSdncRequestHeader(new SdncRequestHeaderBuilder().setRequestId("123").build()).build();
ServiceRestorationInput serviceRestorationInput =
new ServiceRestorationInputBuilder().setServiceName("rest").build();
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInput
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInput
serviceDeleteInput =
ModelMappingUtils.createServiceDeleteInput(serviceRestorationInput, services);
Assert.assertEquals("rest", serviceDeleteInput.getServiceName());
import org.opendaylight.transportpce.servicehandler.ServiceInput;
import org.opendaylight.transportpce.servicehandler.utils.ServiceDataUtils;
import org.opendaylight.transportpce.test.AbstractTest;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInputBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteOutput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteOutputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteOutput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteOutputBuilder;
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.rev190531.configuration.response.common.ConfigurationResponseCommon;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.configuration.response.common.ConfigurationResponseCommonBuilder;
@Test
public void performRendererNullServiceHandlerHeader() {
ServiceDeleteInput input = ServiceDataUtils.buildServiceDeleteInput();
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInput
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInput
serviceDeleteInput =
ModelMappingUtils.createServiceDeleteInput(new ServiceInput(input));
serviceDeleteInput = new ServiceDeleteInputBuilder(serviceDeleteInput).setServiceHandlerHeader(null).build();
@Test
public void performRendererNullServiceName() {
ServiceDeleteInput input = ServiceDataUtils.buildServiceDeleteInput();
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInput
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInput
serviceDeleteInput =
ModelMappingUtils.createServiceDeleteInput(new ServiceInput(input));
serviceDeleteInput = new ServiceDeleteInputBuilder(serviceDeleteInput).setServiceName(null).build();
.setConfigurationResponseCommon(configurationResponseCommon).build();
ListenableFuture<ServiceDeleteOutput> response = ServiceDataUtils.returnFuture(output);
Mockito.when(this.rendererServiceOperationsMock.serviceDelete(any(
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.ServiceDeleteInput.class), any())).thenReturn(response);
ServiceDeleteInput input = ServiceDataUtils.buildServiceDeleteInput();
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInput
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInput
serviceDeleteInput =
ModelMappingUtils.createServiceDeleteInput(new ServiceInput(input));
ServiceDeleteOutput rendereResponse = this.rendererServiceWrapperMock.performRenderer(serviceDeleteInput,
Assert.assertEquals("Renderer service delete in progress",
rendereResponse.getConfigurationResponseCommon().getResponseMessage());
verify(this.rendererServiceOperationsMock).serviceDelete(any(
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.ServiceDeleteInput.class), any());
}
.setConfigurationResponseCommon(configurationResponseCommon).build();
ListenableFuture<ServiceDeleteOutput> response = ServiceDataUtils.returnFuture(output);
Mockito.when(this.rendererServiceOperationsMock.serviceDelete(any(
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.ServiceDeleteInput.class), any())).thenReturn(response);
TempServiceDeleteInput input = ServiceDataUtils.buildTempServiceDeleteInput();
ServiceDeleteOutput rendereResponse = this.rendererServiceWrapperMock.performRenderer(input,
Assert.assertEquals("Renderer service delete in progress",
rendereResponse.getConfigurationResponseCommon().getResponseMessage());
verify(this.rendererServiceOperationsMock).serviceDelete(any(
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInput
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInput
.class), any());
}
import static org.mockito.Mockito.mock;
import org.opendaylight.mdsal.binding.api.NotificationPublishService;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.RendererRpcResultSp;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.RendererRpcResultSpBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.renderer.rpc.result.sp.PathTopologyBuilder;
+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.RendererRpcResultSpBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.renderer.rpc.result.sp.PathTopologyBuilder;
import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.RpcStatusEx;
import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.ServicePathNotificationTypes;
import org.opendaylight.yangtools.yang.binding.Notification;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.path.computation.request.input.ServiceZEnd;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.path.computation.request.input.ServiceZEndBuilder;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.service.path.rpc.result.PathDescription;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceDeleteInputBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.ServiceImplementationRequestInputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestInput;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceImplementationRequestInputBuilder;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.node.types.rev181130.NodeIdType;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.configuration.response.common.ConfigurationResponseCommon;
import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.configuration.response.common.ConfigurationResponseCommonBuilder;
new ServiceImplementationRequestInputBuilder();
serviceImplementationRequestInputBuilder.setServiceName(input.getServiceName());
org.opendaylight.yang.gen.v1.http
- .org.opendaylight.transportpce.renderer.rev210618.service.implementation.request.input.ServiceAEndBuilder
- serviceAEnd = new org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ .org.opendaylight.transportpce.renderer.rev210915.service.implementation.request.input.ServiceAEndBuilder
+ serviceAEnd = new org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.service.implementation.request.input.ServiceAEndBuilder();
serviceAEnd.setServiceFormat(input.getServiceAEnd().getServiceFormat())
.setServiceRate(input.getServiceAEnd().getServiceRate()).setClli(input.getServiceAEnd().getClli())
.org.transportpce.b.c._interface.service.types.rev200128.service.endpoint.sp.RxDirectionBuilder()
.setPort(input.getServiceAEnd().getRxDirection().getPort()).build());
org.opendaylight.yang.gen.v1.http
- .org.opendaylight.transportpce.renderer.rev210618.service.implementation.request.input.ServiceZEndBuilder
- serviceZEnd = new org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ .org.opendaylight.transportpce.renderer.rev210915.service.implementation.request.input.ServiceZEndBuilder
+ serviceZEnd = new org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.service.implementation.request.input.ServiceZEndBuilder();
serviceZEnd.setServiceFormat(input.getServiceZEnd().getServiceFormat())
.setServiceRate(input.getServiceZEnd().getServiceRate()).setClli(input.getServiceZEnd().getClli())
serviceImplementationRequestInputBuilder.setServiceZEnd(serviceZEnd.build());
serviceImplementationRequestInputBuilder.setServiceHandlerHeader(
new ServiceHandlerHeaderBuilder().setRequestId(input.getSdncRequestHeader().getRequestId()).build());
- org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.service.implementation
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.service.implementation
.request.input.PathDescriptionBuilder pathDescBuilder = new org.opendaylight.yang.gen.v1.http
- .org.opendaylight.transportpce.renderer.rev210618.service.implementation.request.input
+ .org.opendaylight.transportpce.renderer.rev210915.service.implementation.request.input
.PathDescriptionBuilder();
pathDescBuilder.setAToZDirection(pathDescription.getAToZDirection());
pathDescBuilder.setZToADirection(pathDescription.getZToADirection());
return serviceImplementationRequestInputBuilder.build();
}
- public static org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ public static org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.ServiceDeleteInput createServiceDeleteInput(ServiceInput serviceInput) {
ServiceDeleteInputBuilder builder = new ServiceDeleteInputBuilder();
builder.setServiceName(serviceInput.getServiceName());
return builder.build();
}
- public static org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618
+ public static org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915
.ServiceDeleteInput createServiceDeleteInput(ServiceRerouteInput serviceRerouteinput, Services services) {
ServiceDeleteInputBuilder builder = new ServiceDeleteInputBuilder();
builder.setServiceName(serviceRerouteinput.getServiceName());
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.ServicePathRpcResultBuilder;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.service.path.rpc.result.PathDescription;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.service.path.rpc.result.PathDescriptionBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.RendererRpcResultSp;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.RendererRpcResultSpBuilder;
+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.RendererRpcResultSpBuilder;
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.node.types.rev181130.NodeIdType;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.TransportpcePceListener;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210426.Network;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210426.network.Nodes;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.TransportpceRendererListener;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.TransportpceRendererListener;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.servicehandler.rev201125.TransportpceServicehandlerListener;
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.opendaylight.transportpce.common.network.NetworkTransactionImpl;
import org.opendaylight.transportpce.common.network.NetworkTransactionService;
import org.opendaylight.transportpce.common.network.RequestProcessor;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.RendererRpcResultSp;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210618.TransportpceRendererListener;
+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.urn.onf.otcc.yang.tapi.common.rev181210.AdministrativeState;
import org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.common.rev181210.Context;
import org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.common.rev181210.LifecycleState;