private void registerLookUpInfo(final GremlinScriptEngine engine, final String shortName) { if (null == engine) throw new IllegalArgumentException(String.format("%s is not an available GremlinScriptEngine", shortName)); cache.putIfAbsent(shortName, engine); engine.getFactory().getExtensions().forEach(ext -> extensionToName.putIfAbsent(ext, shortName)); engine.getFactory().getMimeTypes().forEach(mime -> mimeToName.putIfAbsent(mime, shortName)); } }
/** * 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)); }
@Test public void shouldGetEngineByName() throws Exception { final GremlinScriptEngine scriptEngine = manager.getEngineByName(ENGINE_TO_TEST); assertEquals(ENGINE_TO_TEST, scriptEngine.getFactory().getEngineName()); }
private void registerLookUpInfo(final GremlinScriptEngine engine, final String shortName) { if (null == engine) throw new IllegalArgumentException(String.format("%s is not an available GremlinScriptEngine", shortName)); cache.putIfAbsent(shortName, engine); engine.getFactory().getExtensions().forEach(ext -> extensionToName.putIfAbsent(ext, shortName)); engine.getFactory().getMimeTypes().forEach(mime -> mimeToName.putIfAbsent(mime, shortName)); } }
/** * 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)); }
/** * 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)); }
@Test public void shouldGetEngineByName() throws Exception { final GremlinScriptEngine scriptEngine = manager.getEngineByName(ENGINE_TO_TEST); assertEquals(ENGINE_TO_TEST, scriptEngine.getFactory().getEngineName()); }