X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=renderer%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Frenderer%2Fprovisiondevice%2Ftasks%2FDeviceRenderingRollbackTask.java;h=b1d3b223a14ea71a87d6ae5b46d4cb212ffd6713;hb=aae91d432b783e3cf92ac50215bfb785c7efe873;hp=01bf58cb3a7c303631bcf30d9c8b8231860746a3;hpb=80f9070187cb60c40f057df83bd2ecd123b84b5d;p=transportpce.git diff --git a/renderer/src/main/java/org/opendaylight/transportpce/renderer/provisiondevice/tasks/DeviceRenderingRollbackTask.java b/renderer/src/main/java/org/opendaylight/transportpce/renderer/provisiondevice/tasks/DeviceRenderingRollbackTask.java index 01bf58cb3..b1d3b223a 100644 --- a/renderer/src/main/java/org/opendaylight/transportpce/renderer/provisiondevice/tasks/DeviceRenderingRollbackTask.java +++ b/renderer/src/main/java/org/opendaylight/transportpce/renderer/provisiondevice/tasks/DeviceRenderingRollbackTask.java @@ -8,13 +8,17 @@ package org.opendaylight.transportpce.renderer.provisiondevice.tasks; import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; import java.util.List; +import java.util.Map; import org.opendaylight.transportpce.renderer.provisiondevice.DeviceRendererService; -import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev170907.node.interfaces.NodeInterface; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.renderer.rev170228.RendererRollbackInput; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.renderer.rev170228.RendererRollbackInputBuilder; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.renderer.rev170228.RendererRollbackOutput; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.renderer.rev170228.renderer.rollback.output.FailedToRollback; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev200128.RendererRollbackInput; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev200128.RendererRollbackInputBuilder; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev200128.RendererRollbackOutput; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev200128.renderer.rollback.output.FailedToRollback; +import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev201211.node.interfaces.NodeInterface; +import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev201211.node.interfaces.NodeInterfaceKey; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -23,14 +27,21 @@ public class DeviceRenderingRollbackTask extends RollbackTask { private static final Logger LOG = LoggerFactory.getLogger(DeviceRenderingRollbackTask.class); private final boolean isRollbackNecessary; private final DeviceRendererService rendererService; - private final List renderedInterfaces; + private final Map renderedInterfaces; public DeviceRenderingRollbackTask(String id, boolean isRollbackNecessary, List renderedInterfaces, DeviceRendererService rendererService) { super(id); this.isRollbackNecessary = isRollbackNecessary; this.rendererService = rendererService; - this.renderedInterfaces = renderedInterfaces; + this.renderedInterfaces = new HashMap<>(); + if (renderedInterfaces != null) { + for (NodeInterface nodeInterface : renderedInterfaces) { + if (nodeInterface != null) { + this.renderedInterfaces.put(nodeInterface.key(), nodeInterface); + } + } + } } @Override @@ -46,14 +57,14 @@ public class DeviceRenderingRollbackTask extends RollbackTask { RendererRollbackOutput rollbackOutput = this.rendererService.rendererRollback(rollbackInput); if (! rollbackOutput.isSuccess()) { LOG.warn("Device rendering rollback of {} was not successful! Failed rollback on {}.", this.getId(), - createErrorMessage(rollbackOutput.getFailedToRollback())); + createErrorMessage(rollbackOutput.nonnullFailedToRollback().values())); } else { LOG.info("Device rollback of {} successful.", this.getId()); } return null; } - private String createErrorMessage(List failedRollbacks) { + private String createErrorMessage(Collection failedRollbacks) { List failedRollbackNodes = new ArrayList<>(); failedRollbacks.forEach(failedRollback -> { String nodeId = failedRollback.getNodeId();