diff options
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageUploadPage.java')
-rw-r--r-- | dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageUploadPage.java | 28 |
1 files changed, 19 insertions, 9 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 35704f21..efed6364 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 @@ -8,6 +8,7 @@ import java.io.File; import java.io.FileNotFoundException; import java.io.FilenameFilter; import java.io.IOException; +import java.nio.ByteBuffer; import java.util.List; import javax.swing.JFileChooser; @@ -41,6 +42,8 @@ import org.openslx.virtualization.configuration.logic.ConfigurationLogicDozModCl import org.openslx.virtualization.configuration.transformation.TransformationException; import org.openslx.virtualization.configuration.VirtualizationConfiguration; import org.openslx.virtualization.configuration.VirtualizationConfiguration.HardDisk; +import org.openslx.virtualization.configuration.VirtualizationConfigurationQemu; +import org.openslx.virtualization.configuration.VirtualizationConfigurationVirtualBox; import org.openslx.vm.disk.DiskImage; import org.openslx.vm.disk.DiskImage.ImageFormat; import org.openslx.vm.disk.DiskImageException; @@ -62,12 +65,12 @@ public class ImageUploadPage extends ImageUploadPageLayout { private ImageDetailsRead existingImage = null; private final FileNameExtensionFilter allSupportedFilter; - private final FileNameExtensionFilter vmxFilter = new FileNameExtensionFilter("VMware Virtual Machine", - "vmx"); + private final FileNameExtensionFilter vmxFilter = new FileNameExtensionFilter( + "VMware Virtual Machine", VirtualizationConfigurationVmware.FILE_NAME_EXTENSION); private final FileNameExtensionFilter vboxFilter = new FileNameExtensionFilter( - "VirtualBox Virtual Machine", "vbox"); + "VirtualBox Virtual Machine", VirtualizationConfigurationVirtualBox.FILE_NAME_EXTENSION); private final FileNameExtensionFilter qemuFilter = new FileNameExtensionFilter( - "QEMU Virtual Machine", "xml"); + "QEMU Virtual Machine", VirtualizationConfigurationQemu.FILE_NAME_EXTENSION); private final FileNameExtensionFilter ovfFilter = new FileNameExtensionFilter( "OVF Virtual Machine Format", "ovf"); @@ -107,9 +110,15 @@ 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", "xml", "ova"); + allSupportedFilter = new FileNameExtensionFilter("All Supported", + VirtualizationConfigurationVmware.FILE_NAME_EXTENSION, + VirtualizationConfigurationVirtualBox.FILE_NAME_EXTENSION, + VirtualizationConfigurationQemu.FILE_NAME_EXTENSION, + "ovf", "ova"); } else { - allSupportedFilter = new FileNameExtensionFilter("All Supported", "vmx", "ovf", "ova"); + allSupportedFilter = new FileNameExtensionFilter("All Supported", + VirtualizationConfigurationVmware.FILE_NAME_EXTENSION, + "ovf", "ova"); } btnBrowseForImage.requestFocus(); } @@ -218,9 +227,9 @@ public class ImageUploadPage extends ImageUploadPageLayout { return; } - final ConfigurationLogicDozModClientToDozModServer uploadLogic = new ConfigurationLogicDozModClientToDozModServer(); try { // transforms (filters) the virtualization configuration + final ConfigurationLogicDozModClientToDozModServer uploadLogic = new ConfigurationLogicDozModClientToDozModServer(); uploadLogic.apply( state.virtualizationConfig, new ConfigurationDataDozModClientToDozModServer() ); } catch (TransformationException e) { setErrorMessage(I18n.PAGE.getString("ImageUpload.WizardPage.errorMessage.invalidConfigFile")); @@ -297,7 +306,8 @@ public class ImageUploadPage extends ImageUploadPageLayout { } // check if disk image format is supported by the hypervisor's supported disk image formats - final List<ImageFormat> supportedImageFormats = state.virtualizationConfig.getSupportedImageFormats(); + final List<ImageFormat> supportedImageFormats = state.virtualizationConfig.getVirtualizer() + .getSupportedImageFormats(); if (!diskImage.getFormat().isSupportedbyVirtualizer( supportedImageFormats )) { Gui.showMessageBox(I18n.PAGE.getString("ImageUpload.Message.warning.diskImageNotSupportedByHypervisor", Branding.getServiceName()), MessageType.WARNING, null, null); @@ -400,7 +410,7 @@ public class ImageUploadPage extends ImageUploadPageLayout { if (state.upload == null) { try { state.upload = new UploadInitiator(state.uuid, state.diskFile, - state.virtualizationConfig.getFilteredDefinition()); + ByteBuffer.wrap(state.virtualizationConfig.getConfigurationAsByteArray())); } catch (WrappedException e) { ThriftError.showMessage(this, LOGGER, e.exception, e.displayMessage); return false; |