From e71aef76450fb237f5616d5c1b5b7d5ab2973560 Mon Sep 17 00:00:00 2001
From: Nelson Tavares de Sousa <stu103017@mail.uni-kiel.de>
Date: Wed, 4 Nov 2015 15:29:12 +0100
Subject: [PATCH] first draft

---
 .../java/teetime/framework/Execution.java     | 29 +++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/src/main/java/teetime/framework/Execution.java b/src/main/java/teetime/framework/Execution.java
index 6a746f26..f0242ad1 100644
--- a/src/main/java/teetime/framework/Execution.java
+++ b/src/main/java/teetime/framework/Execution.java
@@ -15,6 +15,7 @@
  */
 package teetime.framework;
 
+import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
@@ -166,4 +167,32 @@ public final class Execution<T extends Configuration> {
 		return this.configuration;
 	}
 
+	private static List<Configuration> configLoader(final String[] args) {
+		List<Configuration> instances = new ArrayList<Configuration>();
+		for (String each : args) {
+			try {
+				Class<?> clazz = Class.forName(each);
+				Object obj = clazz.newInstance();
+				if (obj instanceof Configuration) {
+					instances.add((Configuration) obj);
+				}
+			} catch (ClassNotFoundException e) {
+				System.out.println("Could not find class: " + each);
+			} catch (InstantiationException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			} catch (IllegalAccessException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			}
+		}
+		return instances;
+	}
+
+	public static void main(final String[] args) {
+		List<Configuration> instances = configLoader(args);
+		for (Configuration configuration : instances) {
+			new Execution<Configuration>(configuration).executeBlocking();
+		}
+	}
 }
-- 
GitLab