diff options
| author | Simon Rettberg | 2017-07-27 14:20:39 +0200 |
|---|---|---|
| committer | Simon Rettberg | 2017-07-27 14:20:39 +0200 |
| commit | 85393b3e6b37df8c5e30fc0609176f7ac4e510c9 (patch) | |
| tree | 9b6a1ae00cad4e35f5db4de9e20b9ffd66303139 /dozentenmodul/src/main/java/org | |
| parent | [server] Fix call order in setImageVersionExpiry (diff) | |
| download | tutor-module-85393b3e6b37df8c5e30fc0609176f7ac4e510c9.tar.gz tutor-module-85393b3e6b37df8c5e30fc0609176f7ac4e510c9.tar.xz tutor-module-85393b3e6b37df8c5e30fc0609176f7ac4e510c9.zip | |
[client] Inform user about transfers that run independently of their client
Diffstat (limited to 'dozentenmodul/src/main/java/org')
| -rw-r--r-- | dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java | 36 | ||||
| -rw-r--r-- | dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImagePublishedWindow.java | 6 |
2 files changed, 30 insertions, 12 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java index 93b4faed..3a53af49 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageDetailsWindow.java @@ -476,35 +476,47 @@ public class ImageDetailsWindow extends ImageDetailsWindowLayout implements UiFe */ private void uploadToMaster() { if (metadataChanged || permissionsChanged) { - if (Gui.showMessageBox("Sie haben unspeicherte Änderungen, wollen Sie diese erst speichern?", - MessageType.QUESTION_YESNO, LOGGER, null)) - saveChanges(); + if (Gui.showMessageBox("Sie haben unspeicherte Änderungen, wollen Sie diese erst speichern?", + MessageType.QUESTION_YESNO, null, null)) { + if (!saveChangesInternal()) { + return; + } + } + } // let the user confirm or abort if (!Gui.showMessageBox("Wollen Sie diese VM wirklich landesweit veröffentlichen?", - MessageType.QUESTION_YESNO, LOGGER, null)) + MessageType.QUESTION_YESNO, null, null)) return; // start upload to masterserver QuickTimer.scheduleOnce(new Task() { @Override public void fire() { + final String transferId; try { - final String transferId = ThriftManager.getSatClient().publishImageVersion( + transferId = ThriftManager.getSatClient().publishImageVersion( Session.getSatelliteToken(), image.latestVersionId); - Gui.asyncExec(new Runnable() { - @Override - public void run() { - MainWindow.addPassiveTransfer(transferId, image.imageName, true); - } - }); - // TODO? Should we show a message? Transfer runs between master and sat, we just watch it. You could even close the client now } catch (TException e1) { ThriftError.showMessage(me, LOGGER, e1, "Upload der VM auf den Masterserver fehlgeschlagen." + " Prüfen Sie, ob Sie bei der Registrierung dem landesweiten VM-Austausch zugestimmt haben.\n" + " Sie können dies hier überprüfen:\n" + OpenLinks.Link.REGISTER_BWIDM.uri.toString() + "\n\n"); + return; } + Gui.asyncExec(new Runnable() { + @Override + public void run() { + MainWindow.addPassiveTransfer(transferId, image.imageName, true); + // Inform user + Gui.showMessageBox( + ImageDetailsWindow.this, + "Die Übertragung läuft direkt zwischen Satelliten-Server und" + + " dem Zentral-Server in Freiburg.\n" + + "Wenn Sie die bwLehrpool-Suite schließen, wird der Transfer trotzdem" + + "weiterlaufen.", MessageType.INFO, null, null); + } + }); } }); } diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImagePublishedWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImagePublishedWindow.java index 16ee99cb..6bf7200b 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImagePublishedWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImagePublishedWindow.java @@ -29,6 +29,7 @@ import org.openslx.bwlp.thrift.iface.UserInfo; import org.openslx.dozmod.gui.Gui; import org.openslx.dozmod.gui.MainWindow; import org.openslx.dozmod.gui.control.table.ListTable.ListModel; +import org.openslx.dozmod.gui.helper.MessageType; import org.openslx.dozmod.gui.helper.TextChangeListener; import org.openslx.dozmod.gui.helper.UiFeedback; import org.openslx.dozmod.gui.window.layout.ImagePublishedWindowLayout; @@ -114,9 +115,14 @@ public class ImagePublishedWindow extends ImagePublishedWindowLayout implements } catch (TException ex) { ThriftError.showMessage(me, LOGGER, ex, "Could not start download"); + return; } MainWindow.addPassiveTransfer(transferToken, item.imageName, false); + Gui.showMessageBox(ImagePublishedWindow.this, "Die Übertragung läuft direkt zwischen Satelliten-Server und" + + " dem Zentral-Server in Freiburg.\n" + + "Wenn Sie die bwLehrpool-Suite schließen, wird der Transfer trotzdem" + + "weiterlaufen.", MessageType.INFO, null, null); } }); |
