Skip to content

Commit a10814a

Browse files
committed
Add support for OpenJDK version of Nashorn
1 parent 9bea438 commit a10814a

File tree

1 file changed

+14
-7
lines changed

1 file changed

+14
-7
lines changed

src/javaxt/orm/Parser.java

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,14 @@
11
package javaxt.orm;
2-
import javax.script.*;
3-
import jdk.nashorn.api.scripting.ScriptObjectMirror;
2+
3+
import java.util.*;
44
import javaxt.json.*;
5-
import java.util.HashMap;
5+
6+
//Scripting includes
7+
import javax.script.*;
8+
import org.openjdk.nashorn.api.scripting.ScriptObjectMirror;
9+
import org.openjdk.nashorn.api.scripting.NashornScriptEngineFactory;
10+
import org.openjdk.nashorn.api.scripting.NashornScriptEngine;
11+
612

713
//******************************************************************************
814
//** Parser Class
@@ -67,13 +73,13 @@ public Model[] getModels(){
6773
private void init(JSONObject json){
6874
String packageName = json.get("package").toString();
6975
JSONObject models = json.get("models").toJSONObject();
70-
HashMap<String, String> options = new HashMap<String, String>();
76+
HashMap<String, String> options = new HashMap<>();
7177
for (String key : optionalVars){
7278
String val = json.get(key).toString();
7379
if (val!=null) options.put(key, val);
7480
}
7581

76-
java.util.ArrayList<Model> arr = new java.util.ArrayList<Model>();
82+
ArrayList<Model> arr = new ArrayList<>();
7783
for (String modelName : models.keySet()){
7884
Model model = new Model(modelName, models.get(modelName).toJSONObject(), packageName, options);
7985
arr.add(model);
@@ -94,8 +100,9 @@ private JSONObject parseJavaScript(String js) throws Exception {
94100

95101

96102
//Instantiate ScriptEngine
97-
ScriptEngineManager factory = new ScriptEngineManager();
98-
ScriptEngine engine = factory.getEngineByName("nashorn");
103+
String[] options = new String[] { "--language=es6" };
104+
NashornScriptEngineFactory factory = new NashornScriptEngineFactory();
105+
NashornScriptEngine engine = (NashornScriptEngine) factory.getScriptEngine(options);
99106

100107

101108
//Extract variables

0 commit comments

Comments
 (0)