diff options
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java')
-rw-r--r-- | dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java | 13 |
1 files changed, 7 insertions, 6 deletions
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 f8721e98..0cce4c45 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/util/VmWrapper.java @@ -32,7 +32,6 @@ import org.openslx.virtualization.configuration.VirtualizationConfigurationExcep import org.openslx.virtualization.configuration.data.ConfigurationDataDozModServerToDozModClient; import org.openslx.vm.disk.DiskImage; import org.openslx.vm.disk.DiskImageException; -import org.openslx.vm.disk.DiskImageUtils; import org.openslx.vm.disk.DiskImageVmdk; public class VmWrapper { @@ -67,14 +66,16 @@ public class VmWrapper { } // handle machine description to generate configuration file - final VirtualizationConfiguration<?, ?, ?, ?, ?> virtualizationConfig = VirtualizationConfiguration + final VirtualizationConfiguration<?, ?, ?, ?> virtualizationConfig = VirtualizationConfiguration .getInstance(MetaDataCache.getOperatingSystems(), machineDescription, machineDescription.length); // transform virtualization configuration for local editing - final ConfigurationLogicDozModServerToDozModClient downloadLogic = new ConfigurationLogicDozModServerToDozModClient(); + byte[] configuration = null; try { + final ConfigurationLogicDozModServerToDozModClient downloadLogic = new ConfigurationLogicDozModServerToDozModClient(); downloadLogic.apply( virtualizationConfig, new ConfigurationDataDozModServerToDozModClient( imageName, diskFile, guestOs, virtualizerId, getMainMemoryMb() ) ); + configuration = virtualizationConfig.getConfigurationAsByteArray(); } catch ( TransformationException e ) { throw new VirtualizationConfigurationException( e.getLocalizedMessage() ); } @@ -95,18 +96,18 @@ public class VmWrapper { // save virtualization configuration as file to disk final String baseFileName = FilenameUtils.removeExtension( diskFile.getAbsolutePath() ); final String fileNameExtension = virtualizationConfig.getFileNameExtension(); - final File vmFile = new File(baseFileName + fileNameExtension); + final File vmFile = new File(baseFileName + "." + fileNameExtension); // delete original virtualization configuration file vmFile.delete(); // actually write virtualization configuration to disk - FileUtils.writeByteArrayToFile(vmFile, virtualizationConfig.getFilteredDefinitionArray()); + FileUtils.writeByteArrayToFile(vmFile, configuration); } private static byte[] getFallbackVmx(DiskImageVmdk diskImageInfo) throws IOException, DiskImageException { final String vmx = ResourceLoader.getTextFile("/txt/vmx_template"); - final short hwVersion = DiskImageUtils.versionToMajor(diskImageInfo.getHwVersion()); + final short hwVersion = diskImageInfo.getHwVersion().getMajor(); return vmx.replace("%VM_HW_VERSION%", Short.toString(hwVersion)).getBytes(StandardCharsets.UTF_8); } |