vmtest/src/main/java/org/apidesign/bck2brwsr/vmtest/impl/LaunchSetup.java
changeset 384 269d99fd6421
parent 383 88ed1f51eb22
child 681 93196a859fc5
     1.1 --- a/vmtest/src/main/java/org/apidesign/bck2brwsr/vmtest/impl/LaunchSetup.java	Tue Dec 25 15:31:58 2012 +0100
     1.2 +++ b/vmtest/src/main/java/org/apidesign/bck2brwsr/vmtest/impl/LaunchSetup.java	Tue Dec 25 17:46:21 2012 +0100
     1.3 @@ -21,7 +21,6 @@
     1.4  import java.util.LinkedHashMap;
     1.5  import java.util.Map;
     1.6  import org.apidesign.bck2brwsr.launcher.Launcher;
     1.7 -import org.apidesign.bck2brwsr.launcher.MethodInvocation;
     1.8  import org.testng.annotations.AfterGroups;
     1.9  import org.testng.annotations.BeforeGroups;
    1.10  
    1.11 @@ -30,39 +29,40 @@
    1.12   * @author Jaroslav Tulach <jtulach@netbeans.org>
    1.13   */
    1.14  public final class LaunchSetup {
    1.15 -    private static final LaunchSetup JS = new LaunchSetup(Launcher.createJavaScript());
    1.16 -    private static final Map<String,LaunchSetup> BRWSRS = new LinkedHashMap<>();
    1.17 +    static LaunchSetup INSTANCE = new LaunchSetup();
    1.18      
    1.19 -    private final Launcher launcher;
    1.20 +    private final Launcher js = Launcher.createJavaScript();
    1.21 +    private final Map<String,Launcher> brwsrs = new LinkedHashMap<>();
    1.22      
    1.23 -    private LaunchSetup(Launcher l) {
    1.24 -        launcher = l;
    1.25 +    private LaunchSetup() {
    1.26      }
    1.27      
    1.28 -    public static LaunchSetup javaScript() {
    1.29 -        return JS;
    1.30 +    public  Launcher javaScript() {
    1.31 +        return js;
    1.32      } 
    1.33      
    1.34 -    public static synchronized LaunchSetup brwsr(String cmd) {
    1.35 -        LaunchSetup s = BRWSRS.get(cmd);
    1.36 +    public synchronized Launcher brwsr(String cmd) {
    1.37 +        Launcher s = brwsrs.get(cmd);
    1.38          if (s == null) {
    1.39 -            s = new LaunchSetup(Launcher.createBrowser(cmd));
    1.40 -            BRWSRS.put(cmd, s);
    1.41 +            s = Launcher.createBrowser(cmd);
    1.42 +            brwsrs.put(cmd, s);
    1.43          }
    1.44          return s;
    1.45      }
    1.46  
    1.47      @BeforeGroups("run")
    1.48      public void initializeLauncher() throws IOException {
    1.49 -        launcher.initialize();
    1.50 +        js.initialize();
    1.51 +        for (Launcher launcher : brwsrs.values()) {
    1.52 +            launcher.initialize();
    1.53 +        }
    1.54      }
    1.55  
    1.56      @AfterGroups("run")
    1.57      public void shutDownLauncher() throws IOException, InterruptedException {
    1.58 -        launcher.shutdown();
    1.59 -    }
    1.60 -
    1.61 -    public MethodInvocation invokeMethod(Class<?> clazz, String name) throws IOException {
    1.62 -        return launcher.invokeMethod(clazz, name);
    1.63 +        js.shutdown();
    1.64 +        for (Launcher launcher : brwsrs.values()) {
    1.65 +            launcher.shutdown();
    1.66 +        }
    1.67      }
    1.68  }