Java Reference
In-Depth Information
catch (IOException e) {
throw new ScriptException(e);
}
// Use the String version of eval()
return eval(script, context);
}
@Override
public Bindings createBindings() {
return new SimpleBindings();
}
@Override
public ScriptEngineFactory getFactory() {
return factory;
}
}
The JKScriptEngineFactory Class
Listing 8-3 contains the implementation for the
ScriptEngineFactory
interface for the
JKScript
engine. Some of its methods return a
"Not Implemented"
string because you do
not support features exposed by those methods. The code in the
JKScriptEngineFactory
class is self-explanatory. An instance of the
JKScript
engine may be obtained using
ScriptEngineManager
with a name of
jks
,
JKScript
, or
jkscript
as coded in the
getNames()
method.
Listing 8-3.
A ScriptEngineFactory Implementation for JKScript Script Engine
// JKScriptEngineFactory.java
package com.jdojo.script;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineFactory;
public class JKScriptEngineFactory implements ScriptEngineFactory {
@Override
public String getEngineName() {
return "JKScript Engine";
}
Search WWH ::
Custom Search