From 230e75e440428c4a6309213777f87f7e3e07760f Mon Sep 17 00:00:00 2001 From: Manuel Bentele Date: Tue, 20 Apr 2021 13:56:25 +0200 Subject: Encapsulate transformation logic for virtualization configurations --- .../VirtualizationConfigurationDocker.java | 33 +++++++++++++--------- 1 file changed, 20 insertions(+), 13 deletions(-) (limited to 'src/main/java/org/openslx/virtualization/configuration/VirtualizationConfigurationDocker.java') diff --git a/src/main/java/org/openslx/virtualization/configuration/VirtualizationConfigurationDocker.java b/src/main/java/org/openslx/virtualization/configuration/VirtualizationConfigurationDocker.java index b6f237b..3c21fe4 100644 --- a/src/main/java/org/openslx/virtualization/configuration/VirtualizationConfigurationDocker.java +++ b/src/main/java/org/openslx/virtualization/configuration/VirtualizationConfigurationDocker.java @@ -2,8 +2,7 @@ package org.openslx.virtualization.configuration; import org.apache.log4j.Logger; import org.openslx.bwlp.thrift.iface.OperatingSystem; -import org.openslx.bwlp.thrift.iface.Virtualizer; -import org.openslx.thrifthelper.TConst; +import org.openslx.virtualization.virtualizer.VirtualizerDocker; import org.openslx.vm.disk.DiskImage; import org.openslx.vm.disk.DiskImage.ImageFormat; @@ -37,6 +36,11 @@ class DockerUsbSpeedMeta public class VirtualizationConfigurationDocker extends VirtualizationConfiguration { + /** + * File name extension for Docker virtualization configuration files. + */ + private static final String CONFIGURATION_FILE_NAME_EXTENSION = null; + /** * List of supported image formats by the Docker hypervisor. */ @@ -45,8 +49,6 @@ public class VirtualizationConfigurationDocker extends VirtualizationConfigurati private static final Logger LOGGER = Logger.getLogger( VirtualizationConfigurationDocker.class); - private final Virtualizer virtualizer = new Virtualizer(TConst.VIRT_DOCKER, "Docker"); - /** * containerDefinition is a serialized tar.gz archive and represents a * ContainerDefinition. This archive contains a serialized Container Recipe (e.g. Dockerfile) @@ -60,7 +62,7 @@ public class VirtualizationConfigurationDocker extends VirtualizationConfigurati private byte[] containerDefinition; public VirtualizationConfigurationDocker(List osList, File file) throws VirtualizationConfigurationException { - super(osList); + super(new VirtualizerDocker(), osList); BufferedInputStream bis = null; @@ -83,7 +85,7 @@ public class VirtualizationConfigurationDocker extends VirtualizationConfigurati public VirtualizationConfigurationDocker(List osList, byte[] vmContent, int length) throws VirtualizationConfigurationException { - super(osList); + super(new VirtualizerDocker(), osList); containerDefinition = vmContent; @@ -117,9 +119,13 @@ public class VirtualizationConfigurationDocker extends VirtualizationConfigurati return VirtualizationConfigurationDocker.SUPPORTED_IMAGE_FORMATS; } - @Override public void applySettingsForLocalEdit() { + @Override public void transformEditable() throws VirtualizationConfigurationException { } + + @Override + public void transformPrivacy() throws VirtualizationConfigurationException { + } @Override public boolean addHddTemplate(File diskImage, String hddMode, String redoDir) { return false; @@ -205,15 +211,16 @@ public class VirtualizationConfigurationDocker extends VirtualizationConfigurati return false; } - @Override public Virtualizer getVirtualizer() { - return virtualizer; - } - - @Override public boolean tweakForNonPersistent() { - return false; + @Override public void transformNonPersistent() throws VirtualizationConfigurationException { + } @Override public void registerVirtualHW() { } + + @Override + public String getFileNameExtension() { + return VirtualizationConfigurationDocker.CONFIGURATION_FILE_NAME_EXTENSION; + } } -- cgit v1.2.3-55-g7522