X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=renderer%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Frenderer%2Fprovisiondevice%2Ftasks%2FDeviceRenderingTask.java;h=a997336c67c58707e67ba5f746181d611ed4cc6c;hb=73478a3a5354a2a557520fec6314532bf0ad6a29;hp=329ed2186fc924917212a858e8b5dbd2d89e3605;hpb=c725528fb8a0b09ce24adac744c888a10cf90f72;p=transportpce.git diff --git a/renderer/src/main/java/org/opendaylight/transportpce/renderer/provisiondevice/tasks/DeviceRenderingTask.java b/renderer/src/main/java/org/opendaylight/transportpce/renderer/provisiondevice/tasks/DeviceRenderingTask.java index 329ed2186..a997336c6 100644 --- a/renderer/src/main/java/org/opendaylight/transportpce/renderer/provisiondevice/tasks/DeviceRenderingTask.java +++ b/renderer/src/main/java/org/opendaylight/transportpce/renderer/provisiondevice/tasks/DeviceRenderingTask.java @@ -36,15 +36,31 @@ public class DeviceRenderingTask implements Callable { @Override public DeviceRenderingResult call() throws Exception { - ServicePathOutput output = this.deviceRenderer.setupServicePath(this.servicePathInputData.getServicePathInput(), - this.direction); - if (!output.getSuccess()) { - LOG.warn("Device rendering not successfully finished."); - return DeviceRenderingResult.failed("Operation Failed"); + ServicePathOutput output; + switch (this.servicePathInputData.getServicePathInput().getOperation()) { + case Create: + output = this.deviceRenderer.setupServicePath(this.servicePathInputData.getServicePathInput(), + this.direction); + if (!output.getSuccess()) { + LOG.error("Device rendering setup service path failed."); + return DeviceRenderingResult.failed("Operation Failed"); + } + List olmList = this.servicePathInputData.getNodeLists().getOlmNodeList(); + LOG.info("Device rendering setup service path finished successfully."); + return DeviceRenderingResult.ok(olmList, new ArrayList<>(output.nonnullNodeInterface().values()), + new ArrayList<>(output.nonnullLinkTp())); + case Delete: + output = this.deviceRenderer.deleteServicePath(this.servicePathInputData.getServicePathInput()); + if (!output.getSuccess()) { + LOG.error("Device rendering delete service path failed."); + return DeviceRenderingResult.failed("Operation Failed"); + } + LOG.info("Device rendering delete service path finished successfully."); + return DeviceRenderingResult.ok(null, new ArrayList<>(output.nonnullNodeInterface().values()), + new ArrayList<>(output.nonnullLinkTp())); + default: + return DeviceRenderingResult.failed("Device rendering failed - unknwon operation"); } - List olmList = this.servicePathInputData.getNodeLists().getOlmList(); - LOG.info("Device rendering finished successfully."); - return DeviceRenderingResult.ok(olmList, new ArrayList<>(output.nonnullNodeInterface().values())); } }