summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/openslx/util/vm/VmwareMetaData.java
diff options
context:
space:
mode:
authorSimon Rettberg2015-09-09 16:58:23 +0200
committerSimon Rettberg2015-09-09 16:58:23 +0200
commit92dec2295efd59a7a46ea32a06a44533e38958f6 (patch)
tree19305d14106f6a2e2b5533fc33217865f444c46a /src/main/java/org/openslx/util/vm/VmwareMetaData.java
parentVCache und thrift (diff)
downloadmaster-sync-shared-92dec2295efd59a7a46ea32a06a44533e38958f6.tar.gz
master-sync-shared-92dec2295efd59a7a46ea32a06a44533e38958f6.tar.xz
master-sync-shared-92dec2295efd59a7a46ea32a06a44533e38958f6.zip
vmware: Add methods for adding nics
Diffstat (limited to 'src/main/java/org/openslx/util/vm/VmwareMetaData.java')
-rw-r--r--src/main/java/org/openslx/util/vm/VmwareMetaData.java41
1 files changed, 40 insertions, 1 deletions
diff --git a/src/main/java/org/openslx/util/vm/VmwareMetaData.java b/src/main/java/org/openslx/util/vm/VmwareMetaData.java
index 69b291d..25c052b 100644
--- a/src/main/java/org/openslx/util/vm/VmwareMetaData.java
+++ b/src/main/java/org/openslx/util/vm/VmwareMetaData.java
@@ -190,13 +190,38 @@ public class VmwareMetaData extends VmMetaData
}
}
- public boolean addEthernetNat()
+ public boolean addDefaultNat()
{
addFiltered( "ethernet0.present", "TRUE" );
addFiltered( "ethernet0.connectionType", "nat" );
return true;
}
+ public boolean addEthernet( EthernetType type )
+ {
+ int index = 0;
+ for ( ;; ++index ) {
+ if ( config.get( "ethernet" + index + ".present" ) == null )
+ break;
+ }
+ return addEthernet( index, type );
+ }
+
+ public boolean addEthernet( int index, EthernetType type )
+ {
+ String ether = "ethernet" + index;
+ addFiltered( ether + ".present", "TRUE" );
+ addFiltered( ether + ".connectionType", "custom" );
+ addFiltered( ether + ".vnet", type.vmnet );
+ if ( config.get( ether + ".virtualDev" ) == null ) {
+ String dev = config.get( "ethernet0.virtualDev" );
+ if ( dev != null ) {
+ addFiltered( ether + ".virtualDev", dev );
+ }
+ }
+ return true;
+ }
+
public boolean addDisplayName( String name )
{
addFiltered( "displayName", name );
@@ -253,4 +278,18 @@ public class VmwareMetaData extends VmMetaData
}
}
+ public static enum EthernetType
+ {
+ NAT( "vmnet1" ),
+ BRIDGED( "vmnet0" ),
+ HOST_ONLY( "vmnet2" );
+
+ public final String vmnet;
+
+ private EthernetType( String vnet )
+ {
+ this.vmnet = vnet;
+ }
+ }
+
}