diff options
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageMetaDataPage.java')
-rw-r--r-- | dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageMetaDataPage.java | 41 |
1 files changed, 33 insertions, 8 deletions
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 e6fcc783..a604c167 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 @@ -7,6 +7,8 @@ import org.openslx.dozmod.gui.helper.I18n; import org.openslx.dozmod.gui.helper.TextChangeListener; import org.openslx.dozmod.gui.wizard.Wizard; import org.openslx.dozmod.gui.wizard.layout.ImageMetaDataPageLayout; +import org.openslx.dozmod.model.ContainerDefinition; +import org.openslx.dozmod.model.ContainerMeta; import org.openslx.dozmod.state.UploadWizardState; import org.openslx.dozmod.thrift.Session; import org.openslx.dozmod.thrift.cache.MetaDataCache; @@ -15,6 +17,8 @@ import org.openslx.util.QuickTimer; import org.openslx.util.QuickTimer.Task; import org.openslx.virtualization.configuration.VirtualizationConfigurationDocker; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.util.Collections; @@ -70,6 +74,32 @@ public class ImageMetaDataPage extends ImageMetaDataPageLayout { }); } + private ContainerDefinition containerDefinition; + + public ImageMetaDataPage(Wizard wizard, UploadWizardState state, + ContainerDefinition containerDefinition) { + this(wizard, state); + this.containerDefinition = containerDefinition; + + // TODO we need Information about a OS in Container? Currently use "Other (32 Bit)" as default + lblOperatingSystem.setVisible(false); + cboOperatingSystem.setVisible(false); + + // TODO do we need to check license restrictions in container? + chkLicenseRestricted.setVisible(false); + // TODO currently no Container Template! + chkIsTemplate.setVisible(false); + + // meta attribute for container images + lblContainerImageType.setVisible(true); + cboContainerImageType.setVisible(true); + cboContainerImageType.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent actionEvent) { + reactToUserInput(); + } + }); + } + @Override protected void onPageEnter() { // Preselect OS if possible if (state.detectedOs != null) { @@ -114,14 +144,9 @@ public class ImageMetaDataPage extends ImageMetaDataPageLayout { } 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); - - // TODO do we need to check license restrictions in container? - chkLicenseRestricted.setVisible(false); - // TODO currently no Container Template! - chkIsTemplate.setVisible(false); + containerDefinition.getContainerMeta() + .setImageType((ContainerMeta.ContainerImageType) cboContainerImageType.getSelectedItem()); + state.virtualizationConfig = containerDefinition.createVirtualizationConfig(); } // evaluate description field |