summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/openslx/vm/disk/DiskImageVmdk.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/openslx/vm/disk/DiskImageVmdk.java')
-rw-r--r--src/main/java/org/openslx/vm/disk/DiskImageVmdk.java38
1 files changed, 20 insertions, 18 deletions
diff --git a/src/main/java/org/openslx/vm/disk/DiskImageVmdk.java b/src/main/java/org/openslx/vm/disk/DiskImageVmdk.java
index 58314fc..75a2bac 100644
--- a/src/main/java/org/openslx/vm/disk/DiskImageVmdk.java
+++ b/src/main/java/org/openslx/vm/disk/DiskImageVmdk.java
@@ -3,8 +3,9 @@ package org.openslx.vm.disk;
import java.io.RandomAccessFile;
import org.openslx.util.Util;
-import org.openslx.vm.UnsupportedVirtualizerFormatException;
-import org.openslx.vm.VmwareConfig;
+import org.openslx.virtualization.configuration.VirtualizationConfigurationVmwareFileFormat;
+import org.openslx.virtualization.Version;
+import org.openslx.virtualization.configuration.VirtualizationConfigurationException;
/**
* VMDK (sparse extent) disk image for virtual machines.
@@ -32,7 +33,7 @@ public class DiskImageVmdk extends DiskImage
/**
* Stores disk configuration if VMDK disk image contains an embedded descriptor file.
*/
- private final VmwareConfig vmdkConfig;
+ private final VirtualizationConfigurationVmwareFileFormat vmdkConfig;
/**
* Creates a new VMDK disk image from an existing VMDK image file.
@@ -80,7 +81,7 @@ public class DiskImageVmdk extends DiskImage
*/
private String getCreationType()
{
- final VmwareConfig vmdkConfig = this.getVmdkConfig();
+ final VirtualizationConfigurationVmwareFileFormat vmdkConfig = this.getVmdkConfig();
final String vmdkCreationType;
if ( vmdkConfig == null ) {
@@ -103,10 +104,10 @@ public class DiskImageVmdk extends DiskImage
*
* @throws DiskImageException parsing of the VMDK's embedded descriptor file failed.
*/
- protected VmwareConfig parseVmdkConfig() throws DiskImageException
+ protected VirtualizationConfigurationVmwareFileFormat parseVmdkConfig() throws DiskImageException
{
final RandomAccessFile diskFile = this.getDiskImage();
- final VmwareConfig vmdkConfig;
+ final VirtualizationConfigurationVmwareFileFormat vmdkConfig;
// get offset and size of descriptor file embedded into the VMDK disk image
final long vmdkDescriptorSectorOffset = Long.reverseBytes( DiskImageUtils.readLong( diskFile, 28 ) );
@@ -133,8 +134,8 @@ public class DiskImageVmdk extends DiskImage
// create configuration instance from content of the descriptor file
try {
- vmdkConfig = new VmwareConfig( configStr.getBytes(), vmdkDescriptorSize );
- } catch ( UnsupportedVirtualizerFormatException e ) {
+ vmdkConfig = new VirtualizationConfigurationVmwareFileFormat( configStr.getBytes(), vmdkDescriptorSize );
+ } catch ( VirtualizationConfigurationException e ) {
throw new DiskImageException( e.getLocalizedMessage() );
}
} else {
@@ -150,7 +151,7 @@ public class DiskImageVmdk extends DiskImage
*
* @return parsed configuration of the VMDK's embedded descriptor file.
*/
- protected VmwareConfig getVmdkConfig()
+ protected VirtualizationConfigurationVmwareFileFormat getVmdkConfig()
{
return this.vmdkConfig;
}
@@ -163,12 +164,13 @@ public class DiskImageVmdk extends DiskImage
*
* @return hardware version from the VMDK's embedded descriptor file.
*
- * @throws DiskImageException
+ * @throws DiskImageException unable to obtain the VMDK's hardware version of the disk image
+ * format.
*/
- public int getHwVersion() throws DiskImageException
+ public Version getHwVersion() throws DiskImageException
{
- final VmwareConfig vmdkConfig = this.getVmdkConfig();
- final int hwVersion;
+ final VirtualizationConfigurationVmwareFileFormat vmdkConfig = this.getVmdkConfig();
+ final Version hwVersion;
if ( vmdkConfig != null ) {
// VMDK image contains a hardware version, so return parsed hardware version
@@ -176,11 +178,11 @@ public class DiskImageVmdk extends DiskImage
final String hwVersionStr = vmdkConfig.get( "ddb.virtualHWVersion" );
final int hwVersionMajor = Util.parseInt( hwVersionStr, DiskImageVmdk.VMDK_DEFAULT_HW_VERSION );
- hwVersion = DiskImageUtils.versionFromMajor( Integer.valueOf( hwVersionMajor ).shortValue() );
+ hwVersion = new Version( Integer.valueOf( hwVersionMajor ).shortValue() );
} else {
// VMDK image does not contain any hardware version, so return default hardware version
final int hwVersionMajor = DiskImageVmdk.VMDK_DEFAULT_HW_VERSION;
- hwVersion = DiskImageUtils.versionFromMajor( Integer.valueOf( hwVersionMajor ).shortValue() );
+ hwVersion = new Version( Integer.valueOf( hwVersionMajor ).shortValue() );
}
return hwVersion;
@@ -233,7 +235,7 @@ public class DiskImageVmdk extends DiskImage
@Override
public boolean isSnapshot() throws DiskImageException
{
- final VmwareConfig vmdkConfig = this.getVmdkConfig();
+ final VirtualizationConfigurationVmwareFileFormat vmdkConfig = this.getVmdkConfig();
final boolean vmdkSnapshot;
if ( vmdkConfig == null ) {
@@ -257,12 +259,12 @@ public class DiskImageVmdk extends DiskImage
}
@Override
- public int getVersion() throws DiskImageException
+ public Version getVersion() throws DiskImageException
{
final RandomAccessFile diskFile = this.getDiskImage();
final int vmdkVersion = Integer.reverseBytes( DiskImageUtils.readInt( diskFile, 4 ) );
- return DiskImageUtils.versionFromMajor( Integer.valueOf( vmdkVersion ).shortValue() );
+ return new Version( Integer.valueOf( vmdkVersion ).shortValue() );
}
@Override