@Override public void stop() { if(null != scheduled) { Try.catchAll(() -> scheduled.cancel(true)); scheduled = null; } }
@Override public void preCreateApi(MetaApi api, OrmContext oc, Routes routes) { for(Plugin plugin : plugins) { Try.catchAll(() -> plugin.preCreateApi(api, oc, routes)); } }
@Override public void dispose() throws Throwable { if(!fixedThreadPoolSchedulers.isEmpty()) { for(FixedThreadPoolScheduler scheduler : fixedThreadPoolSchedulers) { Try.catchAll(() -> scheduler.dispose()); } } }
@Override public void postMappingEntity(OrmContext oc, MetaApi api, MetaEntity entity, EntityMappingBuilder emb) { for(Plugin plugin : plugins) { Try.catchAll(() -> plugin.postMappingEntity(oc, api, entity, emb)); } }
@Override public void postCreateApi(MetaApi api, OrmContext oc, DynaApi dynaApi) { for(Plugin plugin : plugins) { Try.catchAll(() -> plugin.postCreateApi(api, oc, dynaApi)); } }
@Override public void postReadApi(MetaApi api) { for(Plugin plugin : plugins) { Try.catchAll(() -> plugin.postReadApi(api)); } }
@Override public void preDeployApi(MetaApi api) { for(Plugin plugin : plugins) { Try.catchAll(() -> plugin.preDeployApi(api)); } }
@Override public void preConvertEntity(OrmContext oc, MetaApi api, MetaEntity entity) { for(Plugin plugin : plugins) { Try.catchAll(() -> plugin.preConvertEntity(oc, api, entity)); } }
@Override public void postDeployApi(Api api) { for(Plugin plugin : plugins) { Try.catchAll(() -> plugin.postDeployApi(api)); } }
protected void closeConnection(Connection connection) { if(null != connection) { Try.catchAll(() -> DataSourceUtils.releaseConnection(connection, dataSource)); } }
public void close() { if(null != monitor) { Try.catchAll(() -> monitor.stop()); } }
public void reload() { relativeModules.clear(); absoluteModules.clear(); moduleClasses.clear(); moduleProviders.values().forEach(p -> Try.catchAll(() -> p.reload())); for(JsResourceResolver bean : resourceResolvers) { Try.catchAll(() -> bean.reload()); } for(JsVariableProvider bean : variableProviders) { Try.catchAll(() -> bean.reload()); } Map<String, Object> vars = new HashMap<>(); for(JsVariableProvider vp : variableProviders) { Try.catchAll(() -> vp.initEngineVariables(this, vars)); } engineVars = vars; }
protected void cleanupApi(ApiImpl prev, ApiImpl curr) { if(null != curr.getApi()) { Try.catchAll(() -> destroyApi(curr.getApi())); curr.setApi(null); } curr.getProtocols().values().forEach(p -> { Try.catchAll(() -> destroyApi(p.getApi())); }); curr.getProtocols().clear(); if(null != curr.getOrmContext()) { Try.catchAll(() -> destroyOrmContext(curr.getOrmContext())); curr.setOrmContext(null); } if(null != curr.getDb()) { if(null == prev || prev.getDb() != curr.getDb()) { Try.catchAll(() -> destroyDb(curr.getDb())); } curr.setDb(null); } curr.setSwagger(null); }
} finally { if(immediately) { Try.catchAll(conn::disconnect);
@Override public void sendAsync(HttpHandler handler) { String connUrl = initConnUrl(); handler.beforeRequest(this); try { handler.afterResponse(this, doSend(connUrl, false)); } catch (Exception e) { if(aborted) { handler.afterAborted(this); }else if(e instanceof RuntimeException) { throw (RuntimeException)e; }else{ throw new HttpException(e); } }finally{ Try.catchAll(conn::disconnect); } }