@Override public Response remove() { get(); return performAction(ActionType.DetachDiskFromVm, new AttachDetachVmDiskParameters(new DiskVmElement(guid, vmId))); }
public void onRemove(final ICommandTarget target) { boolean removeDisk = getLatch().getEntity(); ActionType actionType = removeDisk ? ActionType.RemoveDisk : ActionType.DetachDiskFromVm; List<ActionParametersBase> parameterList = disksToRemove.stream() .map(disk -> removeDisk ? new RemoveDiskParameters(disk.getId()) : new AttachDetachVmDiskParameters(new DiskVmElement(disk.getId(), vm.getId()))) .collect(Collectors.toList()); startProgress(); Frontend.getInstance().runMultipleAction(actionType, parameterList, result -> { stopProgress(); target.executeCommand(cancelCommand); }, this); }
@Override public Response remove() { boolean detachOnly = ParametersHelper.getBooleanParameter(httpHeaders, uriInfo, DETACH_ONLY, true, true); if (detachOnly) { return performAction(ActionType.DetachDiskFromVm, new AttachDetachVmDiskParameters(new DiskVmElement(guid, vmId))); } else { return performAction(ActionType.RemoveDisk, new RemoveDiskParameters(guid)); } }
dve.setDiskInterface(disk.getDiskInterface().getSelectedItem()); dve.setReadOnly(disk.isReadOnly()); AttachDetachVmDiskParameters parameters = new AttachDetachVmDiskParameters(dve , activate);
protected Response attachDiskToVm(AbstractBackendCollectionResource resource, DiskAttachment attachment, IResolver entityResolver) { Guid diskId = Guid.createGuidFromStringDefaultEmpty(attachment.getDisk().getId()); DiskVmElement dve = map(attachment); dve.getId().setVmId(vmId); dve.getId().setDeviceId(diskId); AttachDetachVmDiskParameters params = new AttachDetachVmDiskParameters(dve); Disk disk = attachment.getDisk(); boolean isDiskActive = false; if (attachment.isSetActive()) { isDiskActive = BooleanUtils.toBoolean(attachment.isActive()); } params.setPlugUnPlug(isDiskActive); if (disk.isSetReadOnly()) { dve.setReadOnly(BooleanUtils.toBoolean(disk.isReadOnly())); } if (disk.isSetSnapshot()) { validateParameters(disk, "snapshot.id"); params.setSnapshotId(asGuid(disk.getSnapshot().getId())); } return resource.performCreate(ActionType.AttachDiskToVm, params, entityResolver); }