@VisibleForTesting
static ServletContextListener makeServletContextListener(
final Injector parentInjector,
final Module childModule) {
return new GuiceServletContextListener() {
@Override
protected Injector getInjector() {
return parentInjector.createChildInjector(
childModule,
new JerseyServletModule() {
@Override
protected void configureServlets() {
bind(HttpStatsFilter.class).in(Singleton.class);
filter("*").through(HttpStatsFilter.class);
bind(LeaderRedirectFilter.class).in(Singleton.class);
filterRegex(allOf(LEADER_ENDPOINTS))
.through(LeaderRedirectFilter.class);
bind(GuiceContainer.class).in(Singleton.class);
filterRegex(allOf(ImmutableSet.copyOf(JAX_RS_ENDPOINTS.values())))
.through(GuiceContainer.class, GUICE_CONTAINER_PARAMS);
filterRegex("/assets/scheduler(?:/.*)?").through(LeaderRedirectFilter.class);
serve("/assets", "/assets/*")
.with(new DefaultServlet(), ImmutableMap.of(
"resourceBase", STATIC_ASSETS_ROOT,
"dirAllowed", "false"));
for (Class<?> jaxRsHandler : JAX_RS_ENDPOINTS.keySet()) {
bind(jaxRsHandler);
}
}
});
}
};
}
JettyServerModule.java 文件源码
java
阅读 31
收藏 0
点赞 0
评论 0
项目:Mastering-Mesos
作者:
评论列表
文章目录