diff options
author | Stephan Schwär | 2020-11-06 09:24:52 +0100 |
---|---|---|
committer | Stephan Schwär | 2020-11-06 09:24:52 +0100 |
commit | 73d61f26a4b4f775dee8b5c26192995d68a63048 (patch) | |
tree | b6cab4566e8ea45fedea4c94eaf81ee9efbea4ef /dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page | |
parent | [client] Show notification when trying to convert image created with vbox (diff) | |
download | tutor-module-73d61f26a4b4f775dee8b5c26192995d68a63048.tar.gz tutor-module-73d61f26a4b4f775dee8b5c26192995d68a63048.tar.xz tutor-module-73d61f26a4b4f775dee8b5c26192995d68a63048.zip |
[client] Check if the ovf or ova image were created by vmware or vbox
Feature: #3771
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page')
-rw-r--r-- | dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageOvfConversionPage.java | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageOvfConversionPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageOvfConversionPage.java index 9ec6c824..dc4f057a 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageOvfConversionPage.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageOvfConversionPage.java @@ -91,13 +91,13 @@ public class ImageOvfConversionPage extends ImageOvfConversionPageLayout { }); } - // Check wether the OVA or OVF was created by VirtualBox - private boolean isVboxImage(File file) { + // Check wether the file contains the keyword. Stops after the first few lines. + private boolean fileContainsKeyword(File file, String keyword) { try (Reader reader = new FileReader(file); BufferedReader buffered = new BufferedReader(reader)) { String line; int lineCount = 0; while ((line = buffered.readLine()) != null && lineCount < 50) { - if (line.toLowerCase().contains("vbox")) { + if (line.toLowerCase().contains(keyword)) { LOGGER.debug("Detected OVF/OVA created with Virtual Box"); return true; } @@ -188,12 +188,16 @@ public class ImageOvfConversionPage extends ImageOvfConversionPageLayout { @Override protected void onPageEnter() { - if (isVboxImage(state.descriptionFile)) { + if (!fileContainsKeyword(state.descriptionFile, "vmware")) { Gui.showMessageBox(this, - "Sie haben ein mit VirtualBox erstelltes Image ausgewählt. \n " - + "Die Umwandlung von mit VirtualBox erstellten OVA" - + " und OVF images wird momentan nocht nicht unterstützt.", - MessageType.INFO, LOGGER, null); + "Die ausgewählte Datei scheint kein mit VMware oder VirtualBox erstelltes Image zu sein.", + MessageType.WARNING, LOGGER, null); + } else if (fileContainsKeyword(state.descriptionFile, "vbox")) { + Gui.showMessageBox(this, "Sie haben ein mit VirtualBox erstelltes Image ausgewählt.\n" + + "Die Umwandlung von mit VirtualBox erstellten OVA" + + " und OVF images wird momentan nocht nicht unterstützt.\n" + + "Sie können dennoch versuchen die Konvertierung zu starten, es können aber Fehler auftreten,\n" + + "da das Konvertierungsprogramm von VMWare verwendet wird.", MessageType.INFO, LOGGER, null); } updateConversionProgressbar(0); updateConversionProgressbarText(""); |