From 3e57fdf44d225dfe36ae0e23b0bbe7e048f4d706 Mon Sep 17 00:00:00 2001 From: Jonathan Bauer Date: Wed, 16 Sep 2015 15:38:13 +0200 Subject: [client] ImageCreationWizard: in performFinish, check if any step fails and stop in that case --- .../dozmod/gui/wizard/ImageCreationWizard.java | 23 +++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/ImageCreationWizard.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/ImageCreationWizard.java index ebf91974..32ec91ea 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/ImageCreationWizard.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/ImageCreationWizard.java @@ -62,20 +62,33 @@ public class ImageCreationWizard extends Wizard implements UiFeedback { @Override public void performFinish() { - // TODO check status of each step and stop if something goes wrong // push image base to satellite - ThriftActions.updateImageBase(JOptionPane.getFrameForComponent(this), uploadWizardState.uuid, + boolean pushedBase = ThriftActions.updateImageBase(JOptionPane.getFrameForComponent(this), uploadWizardState.uuid, imageBaseWriteFromState()); - + if (!pushedBase) { + Gui.showMessageBox(this, "Konnte die Metadaten des Images nicht auf dem Satelliten speichern!", MessageType.ERROR, null, null); + return; + } // push permissions to satellite if we have custom permissions + boolean pushedPerms = false; if (uploadWizardState.permissionMap != null) { - ThriftActions.writeImagePermissions(JOptionPane.getFrameForComponent(this), + pushedPerms = ThriftActions.writeImagePermissions(JOptionPane.getFrameForComponent(this), uploadWizardState.uuid, uploadWizardState.permissionMap); + if (!pushedPerms) { + Gui.showMessageBox(this, "Konnte die Berechtigungen nicht auf dem Satelliten speichern!", MessageType.ERROR, null, null); + // TODO delete base image? + return; + } } // push version metadata to satellite - ThriftActions.updateImageVersion(JOptionPane.getFrameForComponent(this), + boolean pushedVersion = ThriftActions.updateImageVersion(JOptionPane.getFrameForComponent(this), uploadWizardState.transferInformation.getToken(), new ImageVersionWrite( uploadWizardState.isRestricted)); + if (!pushedVersion) { + Gui.showMessageBox(this, "Konnte die Metadaten der Version nicht auf dem Satelliten speichern!", MessageType.ERROR, null, null); + // TODO delete base image? + return; + } } /** -- cgit v1.2.3-55-g7522