summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephan Schwär2021-02-19 00:22:28 +0100
committerStephan Schwär2021-02-19 00:22:28 +0100
commit36b99e546392ca5888fb4d23ea14cf0b8214f3fb (patch)
tree07e36a3068092378cbc953a7e4d56e4877ba5a8f
parent[client] Container Bind Mount: Change Input to DropDown (diff)
parent[client] Remove unused dummy code (diff)
downloadtutor-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.java11
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java2
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!");