mirror of https://github.com/apache/druid.git
Merge pull request #653 from metamx/override-static-resource
allow overriding coordinator static resource
This commit is contained in:
commit
43d4e5418a
|
@ -59,4 +59,10 @@ public abstract class DruidCoordinatorConfig
|
|||
{
|
||||
return new Duration(15 * 60 * 1000);
|
||||
}
|
||||
|
||||
@Config("druid.coordinator.console.static")
|
||||
public String getConsoleStatic()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -108,7 +108,9 @@ public class CliCoordinator extends ServerRunnable
|
|||
|
||||
LifecycleModule.register(binder, DruidCoordinator.class);
|
||||
|
||||
binder.bind(JettyServerInitializer.class).toInstance(new CoordinatorJettyServerInitializer());
|
||||
binder.bind(JettyServerInitializer.class)
|
||||
.to(CoordinatorJettyServerInitializer.class);
|
||||
|
||||
Jerseys.addResource(binder, BackwardsCompatibleInfoResource.class);
|
||||
Jerseys.addResource(binder, InfoResource.class);
|
||||
Jerseys.addResource(binder, BackwardsCompatibleCoordinatorResource.class);
|
||||
|
|
|
@ -19,9 +19,11 @@
|
|||
|
||||
package io.druid.cli;
|
||||
|
||||
import com.google.inject.Inject;
|
||||
import com.google.inject.Injector;
|
||||
import com.google.inject.servlet.GuiceFilter;
|
||||
import io.druid.server.coordinator.DruidCoordinator;
|
||||
import io.druid.server.coordinator.DruidCoordinatorConfig;
|
||||
import io.druid.server.http.RedirectFilter;
|
||||
import io.druid.server.initialization.JettyServerInitializer;
|
||||
import org.eclipse.jetty.server.Handler;
|
||||
|
@ -32,11 +34,20 @@ import org.eclipse.jetty.servlet.FilterHolder;
|
|||
import org.eclipse.jetty.servlet.ServletContextHandler;
|
||||
import org.eclipse.jetty.servlet.ServletHolder;
|
||||
import org.eclipse.jetty.servlets.GzipFilter;
|
||||
import org.eclipse.jetty.util.resource.Resource;
|
||||
|
||||
/**
|
||||
*/
|
||||
class CoordinatorJettyServerInitializer implements JettyServerInitializer
|
||||
{
|
||||
private final DruidCoordinatorConfig config;
|
||||
|
||||
@Inject
|
||||
CoordinatorJettyServerInitializer(DruidCoordinatorConfig config)
|
||||
{
|
||||
this.config = config;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initialize(Server server, Injector injector)
|
||||
{
|
||||
|
@ -45,7 +56,12 @@ class CoordinatorJettyServerInitializer implements JettyServerInitializer
|
|||
ServletHolder holderPwd = new ServletHolder("default", DefaultServlet.class);
|
||||
|
||||
root.addServlet(holderPwd, "/");
|
||||
root.setResourceBase(DruidCoordinator.class.getClassLoader().getResource("static").toExternalForm());
|
||||
if(config.getConsoleStatic() == null) {
|
||||
root.setBaseResource(Resource.newClassPathResource("static"));
|
||||
} else {
|
||||
root.setResourceBase(config.getConsoleStatic());
|
||||
}
|
||||
|
||||
root.addFilter(new FilterHolder(injector.getInstance(RedirectFilter.class)), "/*", null);
|
||||
root.addFilter(GzipFilter.class, "/*", null);
|
||||
|
||||
|
|
Loading…
Reference in New Issue