private void updateTraversalSource(String graphName, Graph graph, GremlinExecutor gremlinExecutor, JanusGraphManager graphManager){ gremlinExecutor.getScriptEngineManager().put(graphName, graph); String traversalName = graphName + "_traversal"; TraversalSource traversalSource = graph.traversal(); gremlinExecutor.getScriptEngineManager().put(traversalName, traversalSource); graphManager.putTraversalSource(traversalName, traversalSource); }
private ImportGremlinPlugin(final Builder builder) { super(NAME, builder.appliesTo, DefaultImportCustomizer.build() .addClassImports(builder.classImports) .addEnumImports(builder.enumImports) .addMethodImports(builder.methodImports).create()); }
/** * Bindings to apply to every script evaluated. Note that the entries of the supplied {@code Bindings} object * will be copied into a newly created {@link org.apache.tinkerpop.gremlin.jsr223.ConcurrentBindings} object * at the call of this method. */ public Builder globalBindings(final Bindings bindings) { this.globalBindings = new org.apache.tinkerpop.gremlin.jsr223.ConcurrentBindings(bindings); return this; }
@Test public void shouldIncludeGlobalBindings() throws ScriptException { final GremlinScriptEngineManager manager = new DefaultGremlinScriptEngineManager(); final Bindings b = new SimpleBindings(); b.put("x", 1); b.put("y", 2); manager.addPlugin(BindingsGremlinPlugin.build(). bindings(b).create()); final GremlinScriptEngine engine = manager.getEngineByName(ENGINE_TO_TEST); assertEquals(1, engine.eval("x")); assertEquals(2, engine.eval("y")); }
private GremlinServerGremlinPlugin() { super(MODULE_NAME, DefaultImportCustomizer.build().addClassImports(LifeCycleHook.class, LifeCycleHook.Context.class).create()); }
@Test public void shouldGetEngineByName() throws Exception { final GremlinScriptEngine scriptEngine = manager.getEngineByName(ENGINE_TO_TEST); assertEquals(ENGINE_TO_TEST, scriptEngine.getFactory().getEngineName()); }
/** * Gets a {@link GremlinScriptEngine} from cache or creates a new one from the {@link GremlinScriptEngineFactory}. * <p/> * {@inheritDoc} */ @Override public GremlinScriptEngine getEngineByMimeType(final String mimeType) { if (!mimeToName.containsKey(mimeType)) { final GremlinScriptEngine engine = super.getEngineByMimeType(mimeType); registerLookUpInfo(engine, engine.getFactory().getEngineName()); return engine; } return cache.get(mimeToName.get(mimeType)); }
/** * Gets a {@link GremlinScriptEngine} from cache or creates a new one from the {@link GremlinScriptEngineFactory}. * <p/> * {@inheritDoc} */ @Override public GremlinScriptEngine getEngineByExtension(final String extension) { if (!extensionToName.containsKey(extension)) { final GremlinScriptEngine engine = super.getEngineByExtension(extension); registerLookUpInfo(engine, engine.getFactory().getEngineName()); return engine; } return cache.get(extensionToName.get(extension)); }
/** * Delegates calls to the {@link CachedGremlinScriptEngineManager} instance ensuring that the same instance * is returned for each {@code ScriptEngine} requested. */ public static GremlinScriptEngine get(final String scriptEngineName) { return cached.getEngineByName(scriptEngineName); } }
public ScriptEngineLambda(final String engineName, final String script) { this.engine = SingleGremlinScriptEngineManager.get(engineName); this.script = script; }
public BindingsGremlinPlugin create() { return new BindingsGremlinPlugin(this); } }
/** * Gets the list of all {@link Customizer} implementations to assign to a new {@link GremlinScriptEngine}. This is * the same as doing {@code getCustomizers(null)}. */ public default Optional<Customizer[]> getCustomizers(){ return getCustomizers(null); }
/** * This constructor loads the implementations of {@link GremlinScriptEngineFactory} visible to the given * {@code ClassLoader} using the {@code ServiceLoader} mechanism. If loader is <code>null</code>, the script * engine factories that are bundled with the platform and that are in the usual extension directories * (installed extensions) are loaded. */ public DefaultGremlinScriptEngineManager(final ClassLoader loader) { initEngines(loader); }
/** * Builds a set of static bindings. */ public static BindingsGremlinPlugin.Builder build() { return new Builder(); }
public ConcurrentBindings(final Map<String, Object> m) { // initialize the bindings first with a ConcurrentHashMap and then copy in the bindings this(); this.putAll(m); } }
@Override public GremlinScriptEngineFactory getFactory() { return new MockGremlinScriptEngineFactory(); }
public ScriptFileGremlinPlugin create() { return new ScriptFileGremlinPlugin(this); } }
public GremlinScriptEngineSuite(final Class<?> klass, final RunnerBuilder builder) throws InitializationError { super(builder, klass, allTests); ENGINE_TO_TEST = getScriptEngineName(klass); }
@Override public GremlinScriptEngine getScriptEngine() { return new MockGremlinScriptEngine(); }
public DefaultImportCustomizer create() { return new DefaultImportCustomizer(this); } }