Can Java work with JavaScript object? preprocess
authorJaroslav Tulach <jaroslav.tulach@apidesign.org>
Sun, 01 Dec 2013 05:11:32 +0100
branchpreprocess
changeset 3419b8d362f13f1
parent 339 d2f3cb6a767e
child 342 3d7656b6f28e
Can Java work with JavaScript object?
json-tck/src/main/java/net/java/html/js/tests/Bodies.java
json-tck/src/main/java/net/java/html/js/tests/JavaScriptBodyTest.java
     1.1 --- a/json-tck/src/main/java/net/java/html/js/tests/Bodies.java	Tue Nov 26 18:00:44 2013 +0100
     1.2 +++ b/json-tck/src/main/java/net/java/html/js/tests/Bodies.java	Sun Dec 01 05:11:32 2013 +0100
     1.3 @@ -33,4 +33,10 @@
     1.4      
     1.5      @JavaScriptBody(args = {"r"}, javacall = true, body = "r.@java.lang.Runnable::run()();")
     1.6      static native void callback(Runnable r);
     1.7 +    
     1.8 +    @JavaScriptBody(args = { "v" }, body = "return { 'x' : v };")
     1.9 +    public static native Object instance(int v);
    1.10 +
    1.11 +    @JavaScriptBody(args = "o", body = "return o.x;")
    1.12 +    public static native int readX(Object o);
    1.13  }
     2.1 --- a/json-tck/src/main/java/net/java/html/js/tests/JavaScriptBodyTest.java	Tue Nov 26 18:00:44 2013 +0100
     2.2 +++ b/json-tck/src/main/java/net/java/html/js/tests/JavaScriptBodyTest.java	Sun Dec 01 05:11:32 2013 +0100
     2.3 @@ -32,6 +32,12 @@
     2.4          assert res == 8 : "Expecting 8: " + res;
     2.5      }
     2.6      
     2.7 +    @KOTest public void accessJsObject() {
     2.8 +        Object o = Bodies.instance(10);
     2.9 +        int ten = Bodies.readX(o);
    2.10 +        assert ten == 10 : "Expecting ten: " + ten;
    2.11 +    }
    2.12 +    
    2.13      @KOTest public void callbackToRunnable() {
    2.14          R run = new R();
    2.15          Bodies.callback(run);