From 806be83875d6cdf66e4751fcef92d6c3fe5e548a Mon Sep 17 00:00:00 2001 From: Manuel Bentele Date: Fri, 16 Apr 2021 11:13:33 +0200 Subject: [client,server] Rename VmMetaData classes --- .../dozmod/gui/window/VirtConfigEditorWindow.java | 22 ++++---- .../gui/window/VirtDropDownConfigEditorWindow.java | 63 +++++++++++----------- .../VirtDropDownConfigEditorWindowLayout.java | 10 ++-- .../dozmod/gui/wizard/ImageCreationWizard.java | 4 +- .../gui/wizard/page/ContainerUploadPage.java | 10 ++-- .../dozmod/gui/wizard/page/ImageMetaDataPage.java | 8 +-- .../dozmod/gui/wizard/page/ImageUploadPage.java | 30 +++++------ .../openslx/dozmod/model/ContainerDefinition.java | 10 ++-- .../openslx/dozmod/state/UploadWizardState.java | 6 +-- .../java/org/openslx/dozmod/util/VmWrapper.java | 52 +++++++++--------- 10 files changed, 106 insertions(+), 109 deletions(-) (limited to 'dozentenmodul/src') diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/VirtConfigEditorWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/VirtConfigEditorWindow.java index be47acce..5af62034 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/VirtConfigEditorWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/VirtConfigEditorWindow.java @@ -24,9 +24,9 @@ import org.openslx.dozmod.thrift.ImageDetailsActions; import org.openslx.dozmod.thrift.ImageDetailsActions.VirtConfCallback; import org.openslx.dozmod.thrift.cache.MetaDataCache; import org.openslx.util.XmlHelper; -import org.openslx.virtualization.configuration.VmMetaData; -import org.openslx.virtualization.configuration.machine.VboxMetaData; -import org.openslx.virtualization.configuration.machine.VmwareConfig; +import org.openslx.virtualization.configuration.VirtualizationConfigurationVirtualBox; +import org.openslx.virtualization.configuration.VirtualizationConfigurationVmwareFileFormat; +import org.openslx.virtualization.configuration.VirtualizationConfiguration; public class VirtConfigEditorWindow extends VirtConfigEditorWindowLayout implements UiFeedback { @@ -88,26 +88,26 @@ public class VirtConfigEditorWindow extends VirtConfigEditorWindowLayout impleme // we make use of the fact that we saved the BB here! final String userInput = pnlEditor.getText(); byte[] uiBytes = userInput.getBytes(StandardCharsets.ISO_8859_1); - Charset cs = VmwareConfig.getCharset(uiBytes, uiBytes.length); + Charset cs = VirtualizationConfigurationVmwareFileFormat.getCharset(uiBytes, uiBytes.length); // cs is now either the detected encoding, or latin1 as a default uiBytes = userInput.getBytes(cs); // now we should have the correct bytes... - VmMetaData metaCandidate = null; + VirtualizationConfiguration virtualizationConfig = null; try { - metaCandidate = VmMetaData.getInstance(MetaDataCache.getOperatingSystems(), uiBytes, + virtualizationConfig = VirtualizationConfiguration.getInstance(MetaDataCache.getOperatingSystems(), uiBytes, uiBytes.length); } catch (IOException e) { LOGGER.error("Could not get VmMetaData instance from given machine description: ", e); } - if (metaCandidate == null) { + if (virtualizationConfig == null) { dispose(); return; } - byte[] uiBytesFiltered = metaCandidate.getDefinitionArray(); + byte[] uiBytesFiltered = virtualizationConfig.getDefinitionArray(); final String userInputFiltered; // TODO: This is ugly, why is there instanceof stuff here, add a method to VmMetaData!? - if (metaCandidate instanceof VboxMetaData) { + if (virtualizationConfig instanceof VirtualizationConfigurationVirtualBox) { userInputFiltered = XmlHelper.getFormattedXml(new ByteArrayInputStream(uiBytesFiltered)); } else { userInputFiltered = new String(uiBytesFiltered, cs); @@ -131,13 +131,13 @@ public class VirtConfigEditorWindow extends VirtConfigEditorWindowLayout impleme return; } ByteBuffer toSave; - if (metaCandidate instanceof VboxMetaData) { + if (virtualizationConfig instanceof VirtualizationConfigurationVirtualBox) { String unformattedInput = XmlHelper.getUnformattedXml(new ByteArrayInputStream(uiBytesFiltered)); toSave = ByteBuffer.wrap(unformattedInput.getBytes(cs)); } else { toSave = ByteBuffer.wrap(uiBytesFiltered); } - // we have a valid vmx or the user accepted to push the filtered input + // we have a valid virtualization configuration or the user accepted to push the filtered input actionHandler.setVirtualizerConfig(imageVersionId, toSave, new VirtConfCallback() { @Override public void virtConfCallback(boolean success) { diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/VirtDropDownConfigEditorWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/VirtDropDownConfigEditorWindow.java index 5a768a4e..24021e1a 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/VirtDropDownConfigEditorWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/VirtDropDownConfigEditorWindow.java @@ -20,13 +20,13 @@ import org.openslx.dozmod.thrift.cache.MetaDataCache; import org.openslx.sat.thrift.version.Feature; import org.openslx.util.ThriftUtil; import org.openslx.util.XmlHelper; -import org.openslx.virtualization.configuration.VmMetaData; -import org.openslx.virtualization.configuration.VmMetaData.DDAcceleration; -import org.openslx.virtualization.configuration.VmMetaData.EthernetDevType; -import org.openslx.virtualization.configuration.VmMetaData.HWVersion; -import org.openslx.virtualization.configuration.VmMetaData.SoundCardType; -import org.openslx.virtualization.configuration.VmMetaData.UsbSpeed; -import org.openslx.virtualization.configuration.machine.VboxMetaData; +import org.openslx.virtualization.configuration.VirtualizationConfigurationVirtualBox; +import org.openslx.virtualization.configuration.VirtualizationConfiguration; +import org.openslx.virtualization.configuration.VirtualizationConfiguration.DDAcceleration; +import org.openslx.virtualization.configuration.VirtualizationConfiguration.EthernetDevType; +import org.openslx.virtualization.configuration.VirtualizationConfiguration.HWVersion; +import org.openslx.virtualization.configuration.VirtualizationConfiguration.SoundCardType; +import org.openslx.virtualization.configuration.VirtualizationConfiguration.UsbSpeed; public class VirtDropDownConfigEditorWindow extends VirtDropDownConfigEditorWindowLayout implements UiFeedback { @@ -45,7 +45,7 @@ public class VirtDropDownConfigEditorWindow extends VirtDropDownConfigEditorWind private final String imageVersionId; private final String originalMachineDescription; private final VirtDropDownConfigEditorWindow me = this; - private final VmMetaData meta; + private VirtualizationConfiguration virtualizationConfig = null; private final ImageDetailsActions actionHandler; protected VirtDropDownConfigEditorWindow(Window modalParent, final ImageDetailsActions actionHandler, @@ -56,38 +56,35 @@ public class VirtDropDownConfigEditorWindow extends VirtDropDownConfigEditorWind this.imageVersionId = imageVersionId; // and now for the meta data - VmMetaData metaCandidate = null; byte[] machineData = ThriftUtil.unwrapByteBuffer(machineDescription); try { - metaCandidate = VmMetaData.getInstance(MetaDataCache.getOperatingSystems(), machineData, - machineData.length); + virtualizationConfig = VirtualizationConfiguration.getInstance(MetaDataCache.getOperatingSystems(), + machineData, machineData.length); } catch (IOException e) { LOGGER.error("Could not get VmMetaData instance from given machine description: ", e); } - - meta = metaCandidate; - if (metaCandidate == null) { + if (virtualizationConfig == null) { this.originalMachineDescription = null; dispose(); return; } - initializeSoundBox(meta.getSupportedSoundCards()); - initializeDDABox(meta.getSupportedDDAccs()); - initializeHWVersBox(meta.getSupportedHWVersions()); - initializeEDTBox(meta.getSupportedEthernetDevices()); - initializeUsbBox(meta.getSupportedUsbSpeeds()); + initializeSoundBox(virtualizationConfig.getSupportedSoundCards()); + initializeDDABox(virtualizationConfig.getSupportedDDAccs()); + initializeHWVersBox(virtualizationConfig.getSupportedHWVersions()); + initializeEDTBox(virtualizationConfig.getSupportedEthernetDevices()); + initializeUsbBox(virtualizationConfig.getSupportedUsbSpeeds()); //set the initial state of the buttons - initializeComboBoxes(meta); + initializeComboBoxes(virtualizationConfig); // listener for the sound card drop box cboSound.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { SoundCardType selected = (SoundCardType) cboSound.getSelectedItem(); - meta.setSoundCard(selected); + virtualizationConfig.setSoundCard(selected); btnSave.setEnabled(hasChanged()); } }); @@ -97,7 +94,7 @@ public class VirtDropDownConfigEditorWindow extends VirtDropDownConfigEditorWind @Override public void actionPerformed(ActionEvent e) { DDAcceleration selected = (DDAcceleration) cbo3DAcceleration.getSelectedItem(); - meta.setDDAcceleration(selected); + virtualizationConfig.setDDAcceleration(selected); btnSave.setEnabled(hasChanged()); } }); @@ -107,7 +104,7 @@ public class VirtDropDownConfigEditorWindow extends VirtDropDownConfigEditorWind @Override public void actionPerformed(ActionEvent e) { HWVersion selected = (HWVersion) cboHWVersion.getSelectedItem(); - meta.setHWVersion(selected); + virtualizationConfig.setHWVersion(selected); btnSave.setEnabled(hasChanged()); } }); @@ -117,7 +114,7 @@ public class VirtDropDownConfigEditorWindow extends VirtDropDownConfigEditorWind @Override public void actionPerformed(ActionEvent e) { EthernetDevType selected = (EthernetDevType) cboE0VirtDev.getSelectedItem(); - meta.setEthernetDevType(0, selected); + virtualizationConfig.setEthernetDevType(0, selected); btnSave.setEnabled(hasChanged()); } }); @@ -127,7 +124,7 @@ public class VirtDropDownConfigEditorWindow extends VirtDropDownConfigEditorWind @Override public void actionPerformed(ActionEvent e) { UsbSpeed selected = (UsbSpeed) cboMaxUsbSpeed.getSelectedItem(); - meta.setMaxUsbSpeed(selected); + virtualizationConfig.setMaxUsbSpeed(selected); btnSave.setEnabled(hasChanged()); } }); @@ -156,12 +153,12 @@ public class VirtDropDownConfigEditorWindow extends VirtDropDownConfigEditorWind // here we need special logic for formatting vbox file in a human-readable way... // we will just format it before sending it to the editor window and reformat it right after... String currentMachineDesc; - if (meta instanceof VboxMetaData) + if (virtualizationConfig instanceof VirtualizationConfigurationVirtualBox) currentMachineDesc = XmlHelper - .getFormattedXml(new ByteArrayInputStream(meta.getDefinitionArray())); + .getFormattedXml(new ByteArrayInputStream(virtualizationConfig.getDefinitionArray())); else currentMachineDesc = ThriftUtil - .byteBufferToString(ByteBuffer.wrap(meta.getDefinitionArray())); + .byteBufferToString(ByteBuffer.wrap(virtualizationConfig.getDefinitionArray())); boolean didSave = VirtConfigEditorWindow.open(me, actionHandler, imageVersionId, currentMachineDesc, originalMachineDescription); // user did save the changes via the expert mode window - close this one too @@ -175,10 +172,10 @@ public class VirtDropDownConfigEditorWindow extends VirtDropDownConfigEditorWind btnSave.setEnabled(false); } - /* setting the boxes to their initial value...value is read from the given metaData - * @param: given VmwareMetaData + /* + * setting the boxes to their initial value...value is read from the given virtualization configuration */ - private void initializeComboBoxes(VmMetaData m) { + private void initializeComboBoxes(VirtualizationConfiguration m) { try { SoundCardType SCT = m.getSoundCard(); cboSound.setSelectedItem(SCT); @@ -199,7 +196,7 @@ public class VirtDropDownConfigEditorWindow extends VirtDropDownConfigEditorWind private void saveClicked() { // we have a valid vmx or the user accepted to push the filtered input - actionHandler.setVirtualizerConfig(imageVersionId, ByteBuffer.wrap(meta.getDefinitionArray()), + actionHandler.setVirtualizerConfig(imageVersionId, ByteBuffer.wrap(virtualizationConfig.getDefinitionArray()), new VirtConfCallback() { @Override public void virtConfCallback(boolean success) { @@ -219,7 +216,7 @@ public class VirtDropDownConfigEditorWindow extends VirtDropDownConfigEditorWind private boolean hasChanged() { return !originalMachineDescription - .equals(ThriftUtil.byteBufferToString(ByteBuffer.wrap(meta.getDefinitionArray()))); + .equals(ThriftUtil.byteBufferToString(ByteBuffer.wrap(virtualizationConfig.getDefinitionArray()))); } private void safeClose() { diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/VirtDropDownConfigEditorWindowLayout.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/VirtDropDownConfigEditorWindowLayout.java index 43139fa6..21391ac3 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/VirtDropDownConfigEditorWindowLayout.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/layout/VirtDropDownConfigEditorWindowLayout.java @@ -25,11 +25,11 @@ import org.openslx.dozmod.gui.helper.GridManager; import org.openslx.dozmod.gui.helper.I18n; import org.openslx.dozmod.thrift.Session; import org.openslx.sat.thrift.version.Feature; -import org.openslx.virtualization.configuration.VmMetaData.DDAcceleration; -import org.openslx.virtualization.configuration.VmMetaData.EthernetDevType; -import org.openslx.virtualization.configuration.VmMetaData.HWVersion; -import org.openslx.virtualization.configuration.VmMetaData.SoundCardType; -import org.openslx.virtualization.configuration.VmMetaData.UsbSpeed; +import org.openslx.virtualization.configuration.VirtualizationConfiguration.DDAcceleration; +import org.openslx.virtualization.configuration.VirtualizationConfiguration.EthernetDevType; +import org.openslx.virtualization.configuration.VirtualizationConfiguration.HWVersion; +import org.openslx.virtualization.configuration.VirtualizationConfiguration.SoundCardType; +import org.openslx.virtualization.configuration.VirtualizationConfiguration.UsbSpeed; public class VirtDropDownConfigEditorWindowLayout extends JDialog { diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/ImageCreationWizard.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/ImageCreationWizard.java index cb40b0f5..5d3cdd6b 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/ImageCreationWizard.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/ImageCreationWizard.java @@ -206,7 +206,7 @@ public class ImageCreationWizard extends Wizard LOGGER.error("OS has no id: " + state.selectedOs.toString()); return false; } - if (state.meta == null) { + if (state.virtualizationConfig == null) { LOGGER.error("No vm meta data set in state!"); return false; } @@ -228,7 +228,7 @@ public class ImageCreationWizard extends Wizard private ImageBaseWrite imageBaseWriteFromState() { // build imageBaseWrite return new ImageBaseWrite(state.name, state.description, state.selectedOs.getOsId(), - state.meta.getVirtualizer().getVirtId(), state.isTemplate, state.defaultPermissions, + state.virtualizationConfig.getVirtualizer().getVirtId(), state.isTemplate, state.defaultPermissions, state.shareMode); } diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ContainerUploadPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ContainerUploadPage.java index 4598a43c..5fe3b200 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ContainerUploadPage.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ContainerUploadPage.java @@ -20,7 +20,7 @@ import org.openslx.dozmod.thrift.ThriftError; import org.openslx.dozmod.thrift.UploadInitiator; import org.openslx.dozmod.thrift.WrappedException; import org.openslx.dozmod.thrift.cache.MetaDataCache; -import org.openslx.virtualization.configuration.container.DockerMetaDataDummy; +import org.openslx.virtualization.configuration.VirtualizationConfigurationDocker; import javax.swing.*; import javax.swing.event.ChangeEvent; @@ -253,7 +253,7 @@ public class ContainerUploadPage extends ContainerUploadPageLayout { return true; } - private DockerMetaDataDummy createVmMeta() { + private VirtualizationConfigurationDocker createVirtualizationConfig() { ContainerMeta containerMeta = containerDefinition.getContainerMeta(); containerMeta.setBuildContextMethod(getBuildContextMethod().ordinal()); @@ -275,7 +275,7 @@ public class ContainerUploadPage extends ContainerUploadPageLayout { state.descriptionFile = getDummyFile(); break; } - return containerDefinition.createVmMeta(); + return containerDefinition.createVirtualizationConfig(); } /** @@ -295,7 +295,7 @@ public class ContainerUploadPage extends ContainerUploadPageLayout { // get the image name either auto filled by VmwareMetaData or by user // get the image name from the image we are uploading a new version of state.name = existingImage != null ? existingImage.getImageName() : txtImageName.getText(); - state.meta = createVmMeta(); + state.virtualizationConfig = createVirtualizationConfig(); // -- create image to get uuid -- if (existingImage == null) { @@ -315,7 +315,7 @@ public class ContainerUploadPage extends ContainerUploadPageLayout { if (state.upload == null) { try { state.upload = new UploadInitiator(state.uuid, state.diskFile, - state.meta.getFilteredDefinition()); + state.virtualizationConfig.getFilteredDefinition()); } catch (WrappedException e) { ThriftError.showMessage(this, LOGGER, e.exception, e.displayMessage); return false; diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageMetaDataPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageMetaDataPage.java index c869f27b..7314d5e3 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageMetaDataPage.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageMetaDataPage.java @@ -13,8 +13,8 @@ import org.openslx.dozmod.thrift.cache.MetaDataCache; import org.openslx.thrifthelper.Comparators; import org.openslx.util.QuickTimer; import org.openslx.util.QuickTimer.Task; -import org.openslx.virtualization.configuration.container.DockerMetaDataDummy; -import org.openslx.virtualization.configuration.machine.QemuMetaData; +import org.openslx.virtualization.configuration.VirtualizationConfigurationDocker; +import org.openslx.virtualization.configuration.VirtualizationConfigurationQemu; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; @@ -115,12 +115,12 @@ public class ImageMetaDataPage extends ImageMetaDataPageLayout { return; } - if (state.meta instanceof QemuMetaData) { + if (state.virtualizationConfig instanceof VirtualizationConfigurationQemu) { sCommandCaption.setVisible(true); startCommandPane.setVisible(true); } - if (state.meta instanceof DockerMetaDataDummy) { + if (state.virtualizationConfig instanceof VirtualizationConfigurationDocker) { // TODO we need Information about a OS in Container? Currently use "Other (32 Bit)" as default lblOperatingSystem.setVisible(false); cboOperatingSystem.setVisible(false); 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 07b01702..4bb47d36 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,9 +35,9 @@ import org.openslx.dozmod.thrift.WrappedException; import org.openslx.dozmod.thrift.cache.MetaDataCache; import org.openslx.sat.thrift.version.Feature; import org.openslx.thrifthelper.TConst; -import org.openslx.virtualization.configuration.VmMetaData; -import org.openslx.virtualization.configuration.VmMetaData.HardDisk; -import org.openslx.virtualization.configuration.machine.VmwareMetaData; +import org.openslx.virtualization.configuration.VirtualizationConfigurationVmware; +import org.openslx.virtualization.configuration.VirtualizationConfiguration; +import org.openslx.virtualization.configuration.VirtualizationConfiguration.HardDisk; import org.openslx.vm.disk.DiskImage; import org.openslx.vm.disk.DiskImage.ImageFormat; import org.openslx.vm.disk.DiskImageException; @@ -205,7 +205,7 @@ public class ImageUploadPage extends ImageUploadPageLayout { } try { // gets the metadata object of the selected VM depending on its type - state.meta = VmMetaData.getInstance(MetaDataCache.getOperatingSystems(), file); + state.virtualizationConfig = VirtualizationConfiguration.getInstance(MetaDataCache.getOperatingSystems(), file); } catch (IOException e) { Gui.showMessageBox(this, I18n.PAGE.getString("ImageUpload.Message.error.couldNotGetMetadata", file.getPath()), @@ -214,22 +214,22 @@ public class ImageUploadPage extends ImageUploadPageLayout { return; } - if (state.meta == null || state.meta.getDisplayName() == null) { + if (state.virtualizationConfig == null || state.virtualizationConfig.getDisplayName() == null) { setErrorMessage(I18n.PAGE.getString("ImageUpload.WizardPage.errorMessage.invalidConfigFile")); setPageComplete(false); return; } - final String fileformat = state.meta.getVirtualizer().virtName; + final String fileformat = state.virtualizationConfig.getVirtualizer().virtName; // bail if multiple hypervisors are not supported - if (!(state.meta instanceof VmwareMetaData) && !Session.hasFeature(Feature.MULTIPLE_HYPERVISORS)) { + if (!(state.virtualizationConfig instanceof VirtualizationConfigurationVmware) && !Session.hasFeature(Feature.MULTIPLE_HYPERVISORS)) { setErrorMessage(I18n.PAGE.getString("ImageUpload.WizardPage.errorMessage.hypervisorNotSupported", fileformat)); setPageComplete(false); return; } // check if the user somehow changed the type of the VM - if (existingImage != null && !existingImage.virtId.equals(state.meta.getVirtualizer().virtId)) { + if (existingImage != null && !existingImage.virtId.equals(state.virtualizationConfig.getVirtualizer().virtId)) { Virtualizer existingImageVirtualizer = MetaDataCache.getVirtualizerById(existingImage.virtId); String existingImageVirtualizerName = ""; if (existingImageVirtualizer != null) @@ -240,7 +240,7 @@ public class ImageUploadPage extends ImageUploadPageLayout { return; } - List hdds = state.meta.getHdds(); + List hdds = state.virtualizationConfig.getHdds(); if (hdds.size() == 0 || hdds.get(0).diskImage == null) { setErrorMessage(I18n.PAGE.getString("ImageUpload.WizardPage.errorMessage.noHDD", fileformat)); setPageComplete(false); @@ -289,7 +289,7 @@ public class ImageUploadPage extends ImageUploadPageLayout { } // check if disk image format is supported by the hypervisor's supported disk image formats - final List supportedImageFormats = state.meta.getSupportedImageFormats(); + final List supportedImageFormats = state.virtualizationConfig.getSupportedImageFormats(); if (!diskImage.getFormat().isSupportedbyVirtualizer( supportedImageFormats )) { Gui.showMessageBox(I18n.PAGE.getString("ImageUpload.Message.warning.diskImageNotSupportedByHypervisor", Branding.getServiceName()), MessageType.WARNING, null, null); @@ -299,7 +299,7 @@ public class ImageUploadPage extends ImageUploadPageLayout { } // Warn user about snapshot - if (diskImageIsSnapshot || state.meta.isMachineSnapshot()) { + if (diskImageIsSnapshot || state.virtualizationConfig.isMachineSnapshot()) { Gui.showMessageBox(I18n.PAGE.getString("ImageUpload.Message.warning.diskImageSnapshot", Branding.getServiceName()), MessageType.WARNING, null, null); setErrorMessage(I18n.PAGE.getString("ImageUpload.WizardPage.errorMessage.diskImageSnapshot")); @@ -323,11 +323,11 @@ public class ImageUploadPage extends ImageUploadPageLayout { // User didn't enter a name yet or didn't change it -> set String imageName = txtImageName.getText(); if (imageName.isEmpty() || imageName.equals(lastDetectedName)) { - txtImageName.setText(state.meta.getDisplayName()); + txtImageName.setText(state.virtualizationConfig.getDisplayName()); } } - lastDetectedName = state.meta.getDisplayName(); - state.detectedOs = state.meta.getOs(); + lastDetectedName = state.virtualizationConfig.getDisplayName(); + state.detectedOs = state.virtualizationConfig.getOs(); txtImageFile.setText(file.getAbsolutePath()); // let the user know the upload is ready setErrorMessage(null); @@ -392,7 +392,7 @@ public class ImageUploadPage extends ImageUploadPageLayout { if (state.upload == null) { try { state.upload = new UploadInitiator(state.uuid, state.diskFile, - state.meta.getFilteredDefinition()); + state.virtualizationConfig.getFilteredDefinition()); } catch (WrappedException e) { ThriftError.showMessage(this, LOGGER, e.exception, e.displayMessage); return false; diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/model/ContainerDefinition.java b/dozentenmodul/src/main/java/org/openslx/dozmod/model/ContainerDefinition.java index 6c951b68..c1a1ea3c 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/model/ContainerDefinition.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/model/ContainerDefinition.java @@ -9,8 +9,8 @@ import org.kamranzafar.jtar.TarInputStream; import org.kamranzafar.jtar.TarOutputStream; import org.openslx.dozmod.thrift.cache.MetaDataCache; import org.openslx.dozmod.util.TarArchiveUtil; -import org.openslx.virtualization.configuration.UnsupportedVirtualizerFormatException; -import org.openslx.virtualization.configuration.container.DockerMetaDataDummy; +import org.openslx.virtualization.configuration.VirtualizationConfigurationDocker; +import org.openslx.virtualization.configuration.VirtualizationConfigurationException; import java.io.*; import java.nio.ByteBuffer; @@ -77,12 +77,12 @@ public class ContainerDefinition { return containerMeta; } - public DockerMetaDataDummy createVmMeta() { + public VirtualizationConfigurationDocker createVirtualizationConfig() { byte[] rawContainerRecipe = toByteBuffer().array(); try { - return new DockerMetaDataDummy(MetaDataCache.getOperatingSystems(), rawContainerRecipe, + return new VirtualizationConfigurationDocker(MetaDataCache.getOperatingSystems(), rawContainerRecipe, rawContainerRecipe.length); - } catch (UnsupportedVirtualizerFormatException e) { + } catch (VirtualizationConfigurationException e) { e.printStackTrace(); LOGGER.error("Could not create ContainerMetaDataDummy"); } diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/state/UploadWizardState.java b/dozentenmodul/src/main/java/org/openslx/dozmod/state/UploadWizardState.java index 88bfc899..c6357e05 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/state/UploadWizardState.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/state/UploadWizardState.java @@ -10,7 +10,7 @@ import org.openslx.bwlp.thrift.iface.ShareMode; import org.openslx.dozmod.gui.wizard.WizardPage; import org.openslx.dozmod.thrift.Session; import org.openslx.dozmod.thrift.UploadInitiator; -import org.openslx.virtualization.configuration.VmMetaData; +import org.openslx.virtualization.configuration.VirtualizationConfiguration; public class UploadWizardState { // -- Objects of the GUI itself -- @@ -20,7 +20,7 @@ public class UploadWizardState { public String description = null; // operating system of the virtual machine to be uploaded public OperatingSystem selectedOs = null; - // What we got from the vmx + // What we got from the virtualization configuration public OperatingSystem detectedOs = null; // description file of the virtual machine to be uploaded public File descriptionFile = null; @@ -52,7 +52,7 @@ public class UploadWizardState { /** * Meta data (description file content) of this VM */ - public VmMetaData meta = null; + public VirtualizationConfiguration virtualizationConfig = null; // To be able to call the conversion Page from within the ImageUploadPage // TODO find cleaner approach, this probably shouldn't be in here.. 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 9b04518a..ee5e259e 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java @@ -24,11 +24,11 @@ import org.openslx.dozmod.gui.Gui; import org.openslx.dozmod.gui.helper.MessageType; import org.openslx.dozmod.thrift.cache.MetaDataCache; import org.openslx.thrifthelper.TConst; -import org.openslx.virtualization.configuration.VmMetaData; -import org.openslx.virtualization.configuration.VmMetaData.UsbSpeed; -import org.openslx.virtualization.configuration.machine.QemuMetaData; -import org.openslx.virtualization.configuration.machine.VboxMetaData; -import org.openslx.virtualization.configuration.machine.VmwareMetaData; +import org.openslx.virtualization.configuration.VirtualizationConfigurationQemu; +import org.openslx.virtualization.configuration.VirtualizationConfigurationVirtualBox; +import org.openslx.virtualization.configuration.VirtualizationConfigurationVmware; +import org.openslx.virtualization.configuration.VirtualizationConfiguration; +import org.openslx.virtualization.configuration.VirtualizationConfiguration.UsbSpeed; import org.openslx.vm.disk.DiskImage; import org.openslx.vm.disk.DiskImageException; import org.openslx.vm.disk.DiskImageVmdk; @@ -60,32 +60,32 @@ public class VmWrapper { } } // Handle machine description to generate configuration file - VmMetaData vmMeta = VmMetaData.getInstance(MetaDataCache.getOperatingSystems(), - machineDescription, machineDescription.length); + VirtualizationConfiguration virtualizationConfig = VirtualizationConfiguration + .getInstance(MetaDataCache.getOperatingSystems(), machineDescription, machineDescription.length); // Append disk & NAT - if (!vmMeta.addDefaultNat() || !vmMeta.addHddTemplate(diskFile, null, null)) { + if (!virtualizationConfig.addDefaultNat() || !virtualizationConfig.addHddTemplate(diskFile, null, null)) { throw new MetaDataMissingException(); } - // The guestOS should be in the vmx, but the user could have changed it + // The guestOS should be in the virtualization configuration, but the user could have changed it // by editing // the image via the GUI. Those changes are not written back to the - // stored vmx + // stored virtualization configuration int osMaxMemMb = 0; if (virtualizerId != null && osId != 0) { OperatingSystem os = MetaDataCache.getOsById(osId); if (os != null && os.virtualizerOsId != null) { String virtOsId = os.virtualizerOsId.get(virtualizerId); if (virtOsId != null) { - vmMeta.setOs(virtOsId); + virtualizationConfig.setOs(virtOsId); } if (os.maxMemMb > 0) { osMaxMemMb = os.maxMemMb; } } } - vmMeta.addDisplayName(imageName); + virtualizationConfig.addDisplayName(imageName); int mem = getMainMemoryMb() / 2 - 512; if (mem < 1024) { mem = 1024; @@ -93,16 +93,16 @@ public class VmWrapper { if (osMaxMemMb > 0 && mem > osMaxMemMb) { mem = osMaxMemMb; } - vmMeta.addCpuCoreCount(1); - vmMeta.addRam((mem / 4) * 4); - vmMeta.addFloppy(0, null, true); - vmMeta.addFloppy(1, null, true); - vmMeta.addCdrom(""); // ISO-Based with no disk in drive - vmMeta.addCdrom(null); // Autodetect real drive - if (vmMeta.getMaxUsbSpeed() != UsbSpeed.USB3_0) { - vmMeta.setMaxUsbSpeed(UsbSpeed.USB2_0); + virtualizationConfig.addCpuCoreCount(1); + virtualizationConfig.addRam((mem / 4) * 4); + virtualizationConfig.addFloppy(0, null, true); + virtualizationConfig.addFloppy(1, null, true); + virtualizationConfig.addCdrom(""); // ISO-Based with no disk in drive + virtualizationConfig.addCdrom(null); // Autodetect real drive + if (virtualizationConfig.getMaxUsbSpeed() != UsbSpeed.USB3_0) { + virtualizationConfig.setMaxUsbSpeed(UsbSpeed.USB2_0); } - vmMeta.applySettingsForLocalEdit(); + virtualizationConfig.applySettingsForLocalEdit(); // Output vm String base = diskFile.getAbsolutePath(); @@ -112,7 +112,7 @@ public class VmWrapper { } String fileType = null; - if (vmMeta instanceof VmwareMetaData) { + if (virtualizationConfig instanceof VirtualizationConfigurationVmware) { fileType = ".vmx"; // Copy BIOS with both floppies enabled try { @@ -123,9 +123,9 @@ public class VmWrapper { Gui.asyncMessageBox("Konnte das BIOS für die VM nicht kopieren", MessageType.ERROR, LOGGER, e); } - } else if (vmMeta instanceof VboxMetaData) { + } else if (virtualizationConfig instanceof VirtualizationConfigurationVirtualBox) { fileType = ".vbox"; - } else if (vmMeta instanceof QemuMetaData) { + } else if (virtualizationConfig instanceof VirtualizationConfigurationQemu) { fileType = ".xml"; } if (fileType == null) { @@ -134,8 +134,8 @@ public class VmWrapper { File vmFile = new File(base + fileType); vmFile.delete(); - // actually write vmx to disk - FileUtils.writeByteArrayToFile(vmFile, vmMeta.getFilteredDefinitionArray()); + // actually write virtualization configuration to disk + FileUtils.writeByteArrayToFile(vmFile, virtualizationConfig.getFilteredDefinitionArray()); } private static byte[] getFallbackVmx(DiskImageVmdk diskImageInfo) throws IOException, DiskImageException { -- cgit v1.2.3-55-g7522