rt/launcher/src/main/java/org/apidesign/bck2brwsr/launcher/impl/JVMBridge.java
branchfx
changeset 1004 04efef2a9c1e
parent 845 859804c78010
     1.1 --- a/rt/launcher/src/main/java/org/apidesign/bck2brwsr/launcher/impl/JVMBridge.java	Thu Mar 14 09:22:28 2013 +0100
     1.2 +++ b/rt/launcher/src/main/java/org/apidesign/bck2brwsr/launcher/impl/JVMBridge.java	Wed Apr 17 17:04:40 2013 +0200
     1.3 @@ -17,17 +17,35 @@
     1.4   */
     1.5  package org.apidesign.bck2brwsr.launcher.impl;
     1.6  
     1.7 +import java.util.TooManyListenersException;
     1.8 +import javafx.beans.value.ChangeListener;
     1.9 +
    1.10  /**
    1.11   *
    1.12   * @author Jaroslav Tulach <jtulach@netbeans.org>
    1.13   */
    1.14  public final class JVMBridge {
    1.15      private static ClassLoader[] ldrs;
    1.16 +    private static ChangeListener<Void> onBck2BrwsrLoad;
    1.17          
    1.18      public static void registerClassLoaders(ClassLoader[] loaders) {
    1.19          ldrs = loaders.clone();
    1.20      }
    1.21      
    1.22 +    public static void addBck2BrwsrLoad(ChangeListener<Void> l) throws TooManyListenersException {
    1.23 +        if (onBck2BrwsrLoad != null) {
    1.24 +            throw new TooManyListenersException();
    1.25 +        }
    1.26 +        onBck2BrwsrLoad = l;
    1.27 +    }
    1.28 +
    1.29 +    public static void onBck2BrwsrLoad() {
    1.30 +        ChangeListener<Void> l = onBck2BrwsrLoad;
    1.31 +        if (l != null) {
    1.32 +            l.changed(null, null, null);
    1.33 +        }
    1.34 +    }
    1.35 +    
    1.36      public Class<?> loadClass(String name) throws ClassNotFoundException {
    1.37          System.err.println("trying to load " + name);
    1.38          ClassNotFoundException ex = null;