diff options
author | Stephan Schwär | 2021-02-19 00:22:28 +0100 |
---|---|---|
committer | Stephan Schwär | 2021-02-19 00:22:28 +0100 |
commit | 36b99e546392ca5888fb4d23ea14cf0b8214f3fb (patch) | |
tree | 07e36a3068092378cbc953a7e4d56e4877ba5a8f | |
parent | [client] Container Bind Mount: Change Input to DropDown (diff) | |
parent | [client] Remove unused dummy code (diff) | |
download | tutor-module-36b99e546392ca5888fb4d23ea14cf0b8214f3fb.tar.gz tutor-module-36b99e546392ca5888fb4d23ea14cf0b8214f3fb.tar.xz tutor-module-36b99e546392ca5888fb4d23ea14cf0b8214f3fb.zip |
Merge remote-tracking branch 'origin/feature/qemu-integration' into feature-merge
-rw-r--r-- | dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageUploadPage.java | 11 | ||||
-rw-r--r-- | dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java | 2 |
2 files changed, 10 insertions, 3 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageUploadPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageUploadPage.java index 19ce1429..eb5e3d4e 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageUploadPage.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageUploadPage.java @@ -35,6 +35,7 @@ import org.openslx.dozmod.thrift.cache.MetaDataCache; import org.openslx.sat.thrift.version.Feature; import org.openslx.thrifthelper.TConst; import org.openslx.util.vm.DiskImage; +import org.openslx.util.vm.DiskImage.ImageFormat; import org.openslx.util.vm.DiskImage.UnknownImageFormatException; import org.openslx.util.vm.VmMetaData; import org.openslx.util.vm.VmMetaData.HardDisk; @@ -57,6 +58,8 @@ public class ImageUploadPage extends ImageUploadPageLayout { "vmx"); private final FileNameExtensionFilter vboxFilter = new FileNameExtensionFilter( "VirtualBox Virtual Machine", "vbox"); + private final FileNameExtensionFilter qemuFilter = new FileNameExtensionFilter( + "QEMU Virtual Machine", "xml"); private final FileNameExtensionFilter ovfFilter = new FileNameExtensionFilter( "OVF Virtual Machine Format", "ovf"); @@ -96,7 +99,7 @@ public class ImageUploadPage extends ImageUploadPageLayout { // initialize allSupportedFilter depending on whether multiple hypervisors // are supported or not if (Session.hasFeature(Feature.MULTIPLE_HYPERVISORS)) { - allSupportedFilter = new FileNameExtensionFilter("All Supported", "vmx", "ovf", "vbox", "ova"); + allSupportedFilter = new FileNameExtensionFilter("All Supported", "vmx", "ovf", "vbox", "xml", "ova"); } else { allSupportedFilter = new FileNameExtensionFilter("All Supported", "vmx", "ovf", "ova"); } @@ -111,6 +114,7 @@ public class ImageUploadPage extends ImageUploadPageLayout { fc.addChoosableFileFilter(ovaFilter); if (Session.hasFeature(Feature.MULTIPLE_HYPERVISORS)) { fc.addChoosableFileFilter(vboxFilter); + fc.addChoosableFileFilter(qemuFilter); } fc.addChoosableFileFilter(allSupportedFilter); fc.setFileFilter(allSupportedFilter); @@ -120,6 +124,8 @@ public class ImageUploadPage extends ImageUploadPageLayout { fc.setFileFilter(vmxFilter); } else if (existingImage.virtId.equals(TConst.VIRT_VIRTUALBOX)) { fc.setFileFilter(vboxFilter); + } else if (existingImage.virtId.equals(TConst.VIRT_QEMU)) { + fc.setFileFilter(qemuFilter); } } @@ -217,8 +223,9 @@ public class ImageUploadPage extends ImageUploadPageLayout { vmDiskFileInfo = new File(vmBaseDirectory, hdds.get(0).diskImage); } DiskImage diskImage; + List<DiskImage.ImageFormat> supportedImageFormats = state.meta.getSupportedImageFormats(); try { - diskImage = new DiskImage(vmDiskFileInfo); + diskImage = new DiskImage(vmDiskFileInfo, supportedImageFormats); } catch (FileNotFoundException e) { setErrorMessage(I18n.PAGE.getString("ImageUpload.WizardPage.errorMessage.diskImageNotFound", vmDiskFileInfo.getName())); diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java b/dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java index 58093471..3f3b9fac 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java @@ -114,7 +114,7 @@ public class VmWrapper { } else if (vmMeta instanceof VboxMetaData) { fileType = ".vbox"; } else if (vmMeta instanceof QemuMetaData) { - fileType = "_startCommand.txt"; + fileType = ".xml"; } if (fileType == null) { LOGGER.warn("file type somehow unclear; application could stop working here!"); |