summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java
diff options
context:
space:
mode:
authorralph isenmann2021-10-15 15:01:34 +0200
committerralph isenmann2021-10-15 15:01:34 +0200
commita7c5fb30d95043306d31ec867966005893a346f8 (patch)
treeb1b2d98bbe3757ae89be4974db5b1707e989dfef /dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java
parent[client] allow users to upload new versions of container images. (diff)
downloadtutor-module-a7c5fb30d95043306d31ec867966005893a346f8.tar.gz
tutor-module-a7c5fb30d95043306d31ec867966005893a346f8.tar.xz
tutor-module-a7c5fb30d95043306d31ec867966005893a346f8.zip
[client] Update process of the download for container images
- show some info to user what was actually downloaded und what to do with it.
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java25
1 files changed, 5 insertions, 20 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java b/dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java
index fe884a15..3c3a5f1c 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/util/ImageWrapper.java
@@ -7,22 +7,16 @@ import org.openslx.dozmod.gui.helper.I18n;
import org.openslx.dozmod.gui.helper.MessageType;
import org.openslx.thrifthelper.TConst;
import org.openslx.virtualization.configuration.VirtualizationConfigurationException;
-import org.openslx.virtualization.configuration.container.ContainerDefinition;
import org.openslx.virtualization.disk.DiskImage;
import org.openslx.virtualization.disk.DiskImage.ImageFormat;
import org.openslx.virtualization.disk.DiskImageException;
import java.io.File;
import java.io.IOException;
-import java.nio.file.Files;
/**
* This Class handle the unpacking of Images downloaded from
* the server individually (VM-Images, Docker-Images (Container Images)).
- *
- * In case of Container-Images the Image-Blob is not important because it can be recreated with the
- * recipe (e.g. dockerfile).
- * TODO Do not download the Image-Blob of a Container-Image.
*/
public class ImageWrapper {
@@ -47,20 +41,10 @@ public class ImageWrapper {
boolean imageIsCompressed = false;
ImageFormat imageFormat = null;
- // unwrap each image individually
- // TODO In future maybe this is a check to distinguish between VM-Image and Container Image
+ // unwrap container image individually
if (virtualizerId.equals(TConst.VIRT_DOCKER)) {
- ContainerDefinition conDef = ContainerDefinition.fromByteArray(virtualizerConfig);
- conDef.saveLocal(destDir);
-
- try {
- // delete image file, unused in container Context.
- Files.delete(tmpDiskFile.toPath());
- } catch (IOException e) {
- Gui.asyncMessageBox("Konnte temporäre Download Datei nicht löschen", MessageType.WARNING,
- LOGGER, e);
- }
+ ContainerWrapper.unwrapContainer(tmpDiskFile, imageName, destDir, virtualizerConfig);
} else {
@@ -73,8 +57,9 @@ public class ImageWrapper {
}
if (imageIsCompressed && imageFormat != ImageFormat.QCOW2) {
- Gui.asyncMessageBox(I18n.THRIFT.getString("ThriftActions.Message.warning.diskImageCompressed",
- imageName, Branding.getServiceFAQWebsite()), MessageType.WARNING, null, null);
+ Gui.asyncMessageBox(
+ I18n.THRIFT.getString("ThriftActions.Message.warning.diskImageCompressed", imageName,
+ Branding.getServiceFAQWebsite()), MessageType.WARNING, null, null);
}
File destImage = new File(destDir.getAbsolutePath(), VmWrapper.generateFilename(imageName, ext));
destImage.delete();