diff options
author | Victor Mocanu | 2017-10-02 13:34:41 +0200 |
---|---|---|
committer | Victor Mocanu | 2017-10-02 13:34:41 +0200 |
commit | 51ebb850c035e34446acff8d6ddcc11fcf6bcdaa (patch) | |
tree | 0c00429daa367e4e6f521d9a0492b231a30830de /src/main/java/org/openslx/util/vm/VboxMetaData.java | |
parent | [VBox] changes to the VmWrapper class, it asks now for an VmMetaData child, i... (diff) | |
download | master-sync-shared-51ebb850c035e34446acff8d6ddcc11fcf6bcdaa.tar.gz master-sync-shared-51ebb850c035e34446acff8d6ddcc11fcf6bcdaa.tar.xz master-sync-shared-51ebb850c035e34446acff8d6ddcc11fcf6bcdaa.zip |
[VBox] working coppy in case further changes result in catastrophical failure
Diffstat (limited to 'src/main/java/org/openslx/util/vm/VboxMetaData.java')
-rw-r--r-- | src/main/java/org/openslx/util/vm/VboxMetaData.java | 44 |
1 files changed, 32 insertions, 12 deletions
diff --git a/src/main/java/org/openslx/util/vm/VboxMetaData.java b/src/main/java/org/openslx/util/vm/VboxMetaData.java index dac8e78..da6dc33 100644 --- a/src/main/java/org/openslx/util/vm/VboxMetaData.java +++ b/src/main/java/org/openslx/util/vm/VboxMetaData.java @@ -5,6 +5,7 @@ import java.io.IOException; import java.nio.charset.StandardCharsets; import java.util.List; +import javax.print.attribute.standard.PrinterMessageFromOperator; import javax.xml.transform.Source; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerException; @@ -13,11 +14,15 @@ import javax.xml.transform.TransformerFactoryConfigurationError; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; +import org.apache.log4j.Logger; +import org.apache.log4j.rewrite.ReflectionRewritePolicy; import org.openslx.bwlp.thrift.iface.OperatingSystem; import org.openslx.bwlp.thrift.iface.Virtualizer; + public class VboxMetaData extends VmMetaData { + private static final Logger LOGGER = Logger.getLogger( VboxMetaData.class ); private static final Virtualizer virtualizer = new Virtualizer( "virtualbox", "VirtualBox" ); private final VboxConfig config; @@ -34,9 +39,10 @@ public class VboxMetaData extends VmMetaData public VboxMetaData( List<OperatingSystem> osList, byte[] vmContent, int length ) throws IOException, UnsupportedVirtualizerFormatException { super( osList ); - this.config = new VboxConfig( vmContent.toString(), length ); - + this.config = new VboxConfig( vmContent, length ); + setTypeOf(); init(); + } private void init() @@ -53,7 +59,7 @@ public class VboxMetaData extends VmMetaData try { WriteToFile(); } catch ( TransformerFactoryConfigurationError | TransformerException e ) { - // TODO Auto-generated catch block + // WriteToFile exceptions here...not important for the the LOGGER e.printStackTrace(); } } @@ -95,17 +101,25 @@ public class VboxMetaData extends VmMetaData @Override public boolean addHddTemplate( String diskImagePath, String hddMode, String redoDir ) { - // TODO Auto-generated method stub - return false; + config.changeAttribute( "HardDisk", "location", diskImagePath ); + return true; } @Override public boolean addDefaultNat() { - // TODO Auto-generated method stub - return false; + config.addSomeNewNode( "Adapter", "NAT", false ); + return true; + } + + public void reWrite() { + try { + WriteToFile(); + } catch ( TransformerFactoryConfigurationError | TransformerException e ) { + // TODO Auto-generated catch block + e.printStackTrace(); + } } - @Override public void setOs( String vendorOsId ) { @@ -116,15 +130,15 @@ public class VboxMetaData extends VmMetaData @Override public boolean addDisplayName( String name ) { - // TODO Auto-generated method stub - return false; + config.changeAttribute( "Machine", "name", name ); + return true; } @Override public boolean addRam( int mem ) { - // TODO Auto-generated method stub - return false; + config.changeAttribute( "Memory", "RAMSize", Integer.toString( mem ) ); + return true; } @Override @@ -141,5 +155,11 @@ public class VboxMetaData extends VmMetaData return false; } + @Override + public void setTypeOf() + { + typeOf = TypeOf.VBOX; + } + // TODO: the part after getting the byte[] from the Server and doing stuff with it...SoundCard types etc... } |