Need to register as service provider of context
authorJaroslav Tulach <jaroslav.tulach@apidesign.org>
Fri, 26 Apr 2013 16:22:23 +0200
changeset 40fb3fa16fb606
parent 39 d1d08fe93ae3
child 41 ee455e48c3f0
Need to register as service provider of context
ko-fx/src/main/java/org/apidesign/html/kofx/FXContext.java
     1.1 --- a/ko-fx/src/main/java/org/apidesign/html/kofx/FXContext.java	Fri Apr 26 13:45:46 2013 +0200
     1.2 +++ b/ko-fx/src/main/java/org/apidesign/html/kofx/FXContext.java	Fri Apr 26 16:22:23 2013 +0200
     1.3 @@ -25,24 +25,31 @@
     1.4  import net.java.html.json.Context;
     1.5  import netscape.javascript.JSObject;
     1.6  import org.apidesign.html.json.spi.ContextBuilder;
     1.7 +import org.apidesign.html.json.spi.ContextProvider;
     1.8  import org.apidesign.html.json.spi.FunctionBinding;
     1.9  import org.apidesign.html.json.spi.JSONCall;
    1.10  import org.apidesign.html.json.spi.PropertyBinding;
    1.11  import org.apidesign.html.json.spi.Technology;
    1.12  import org.apidesign.html.json.spi.Transfer;
    1.13 +import org.openide.util.lookup.ServiceProvider;
    1.14  
    1.15  /**
    1.16   *
    1.17   * @author Jaroslav Tulach <jtulach@netbeans.org>
    1.18   */
    1.19 -public final class FXContext implements Callable<Context>, Technology<JSObject>, Transfer {
    1.20 +@ServiceProvider(service = ContextProvider.class)
    1.21 +public final class FXContext
    1.22 +implements Technology<JSObject>, Transfer, ContextProvider {
    1.23      static final Logger LOG = Logger.getLogger(FXContext.class.getName());
    1.24 -    
    1.25 -    
    1.26 +
    1.27      @Override
    1.28 -    public Context call() throws Exception {
    1.29 -        return ContextBuilder.create().withTechnology(this).
    1.30 -            withTransfer(this).build();
    1.31 +    public Context findContext(Class<?> requestor) {
    1.32 +        if (Knockout.web() != null) {
    1.33 +            return ContextBuilder.create().withTechnology(this).
    1.34 +                withTransfer(this).build();
    1.35 +        } else {
    1.36 +            return null;
    1.37 +        }
    1.38      }
    1.39  
    1.40      @Override