summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/openslx/util/vm/VmMetaData.java
diff options
context:
space:
mode:
authorVictor Mocanu2017-05-22 12:15:47 +0200
committerVictor Mocanu2017-05-22 12:15:47 +0200
commit908be91fa0ecca4ef0904bce729b3aaf184d2c4b (patch)
tree2ac20675e4d1c01ba4f7c7c5f789a3cf13e111c7 /src/main/java/org/openslx/util/vm/VmMetaData.java
parentAdd Feature support for dozmod; add allowLoginByDefault option (diff)
downloadmaster-sync-shared-908be91fa0ecca4ef0904bce729b3aaf184d2c4b.tar.gz
master-sync-shared-908be91fa0ecca4ef0904bce729b3aaf184d2c4b.tar.xz
master-sync-shared-908be91fa0ecca4ef0904bce729b3aaf184d2c4b.zip
[VBOX] restructured generic VmMetaData for comming VBox support
Diffstat (limited to 'src/main/java/org/openslx/util/vm/VmMetaData.java')
-rw-r--r--src/main/java/org/openslx/util/vm/VmMetaData.java40
1 files changed, 38 insertions, 2 deletions
diff --git a/src/main/java/org/openslx/util/vm/VmMetaData.java b/src/main/java/org/openslx/util/vm/VmMetaData.java
index 75e559a..7530039 100644
--- a/src/main/java/org/openslx/util/vm/VmMetaData.java
+++ b/src/main/java/org/openslx/util/vm/VmMetaData.java
@@ -1,11 +1,15 @@
package org.openslx.util.vm;
+import java.io.File;
+import java.io.IOException;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map.Entry;
+import javax.swing.JOptionPane;
+
import org.openslx.bwlp.thrift.iface.OperatingSystem;
import org.openslx.bwlp.thrift.iface.Virtualizer;
@@ -15,7 +19,6 @@ import org.openslx.bwlp.thrift.iface.Virtualizer;
*/
public abstract class VmMetaData
{
-
/*
* Helper types
*/
@@ -140,5 +143,38 @@ public abstract class VmMetaData
* for vmware, this disables automatic DPI scaling of the guest.
*/
public abstract void applySettingsForLocalEdit();
-
+
+
+ public static VmMetaData getInstance(List<OperatingSystem> osList, File file) throws IOException {
+
+ // throw new IOException();
+
+ // TODO file object check nach "Pattern"
+ // TODO make it genericsher
+
+ // unknown file > try to init vmware, vbox, ... until one works
+
+
+
+
+
+ String fileName = file.getName();
+
+ VmMetaData meta = null;
+ try {
+ meta = new VmwareMetaData(osList, file);
+ } catch ( UnsupportedVirtualizerFormatException e ) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ if (meta != null) {
+ return meta;
+ }
+ /*try {
+ meta = new VboxMetaData(osList, file);
+ } catch ( UnsupportedVirtualizerFormatException e ) {
+
+ }*/
+ return null;
+ }
}