
com.thinkaurelius.titan.hadoop.tinkerpop.gremlin.ScriptExecutor Maven / Gradle / Ivy
package com.thinkaurelius.titan.hadoop.tinkerpop.gremlin;
import javax.script.Bindings;
import javax.script.ScriptContext;
import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;
import java.util.Arrays;
import java.util.List;
/**
* @author Marko A. Rodriguez (http://markorodriguez.com)
*/
public class ScriptExecutor {
public static void main(final String[] arguments) throws IOException {
if (arguments.length == 0) {
System.out.println("Usage: ...");
} else {
evaluate(new FileReader(arguments[0]), Arrays.asList(arguments).subList(1, arguments.length));
}
}
protected static void evaluate(final Reader reader, final List arguments) throws IOException {
final FaunusGremlinScriptEngine engine = new FaunusGremlinScriptEngine();
final Bindings bindings = engine.getBindings(ScriptContext.GLOBAL_SCOPE);
if (arguments.size() > 0) {
for (int i = 0; i < arguments.size(); i++) {
bindings.put("a" + (i + 1), arguments.get(i));
}
}
try {
engine.eval(reader, bindings);
} catch (Exception e) {
System.err.println(e.getMessage());
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy