aboutsummaryrefslogtreecommitdiff
path: root/samples/engine/interface2.js
diff options
context:
space:
mode:
Diffstat (limited to 'samples/engine/interface2.js')
-rw-r--r--samples/engine/interface2.js63
1 files changed, 0 insertions, 63 deletions
diff --git a/samples/engine/interface2.js b/samples/engine/interface2.js
deleted file mode 100644
index 508be3ac..00000000
--- a/samples/engine/interface2.js
+++ /dev/null
@@ -1,63 +0,0 @@
-#// Usage: jjs -scripting interface2.js
-
-/*
- * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * - Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * - Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * - Neither the name of Oracle nor the names of its
- * contributors may be used to endorse or promote products derived
- * from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
- * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
- * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-// Simple example demonstrating how to implement java interface
-// whose methods are backed by script methods of a script object
-
-var ScriptEngineManager = Java.type("javax.script.ScriptEngineManager");
-// create manager
-var manager = new ScriptEngineManager();
-// create engine
-var engine = manager.getEngineByName("js");
-
-// eval code - too many script escapes?
-// use heredoc !
-engine.eval(<<CODE
- var obj = {
- run: function() {
- print("I am run method of 'obj'");
- }
- };
-CODE);
-
-// create Java interface object whose methods are
-// implemented by script methods of a script object
-// This is from javax.script.Invocable. But we are
-// in JS world, don't worry about types :)
-
-var Runnable = Java.type("java.lang.Runnable");
-
-var scriptObj = engine.get("obj");
-var r = engine.getInterface(scriptObj, Runnable.class);
-print(r.class);
-r.run();