Class JettyServerInitUtils

java.lang.Object
org.apache.druid.server.initialization.jetty.JettyServerInitUtils

public class JettyServerInitUtils extends Object
  • Constructor Details

    • JettyServerInitUtils

      public JettyServerInitUtils()
  • Method Details

    • wrapWithDefaultGzipHandler

      public static org.eclipse.jetty.server.handler.gzip.GzipHandler wrapWithDefaultGzipHandler(org.eclipse.jetty.server.Handler handler, int inflateBufferSize, int compressionLevel)
    • addQosFilters

      public static void addQosFilters(org.eclipse.jetty.servlet.ServletContextHandler handler, com.google.inject.Injector injector)
      Add any filters that were registered with JettyBindings.addQosFilter(com.google.inject.Binder, java.lang.String, int). These must be added first in the filter chain, because when a request is suspended and later resumed due to QoS constraints, its filter chain is restarted. Placing QoSFilters first in the chain avoids double-execution of other filters.
    • addExtensionFilters

      public static void addExtensionFilters(org.eclipse.jetty.servlet.ServletContextHandler handler, com.google.inject.Injector injector)
    • addFilters

      public static void addFilters(org.eclipse.jetty.servlet.ServletContextHandler handler, Set<? extends ServletFilterHolder> filterHolders)
    • getJettyRequestLogHandler

      public static org.eclipse.jetty.server.Handler getJettyRequestLogHandler()
    • addAllowHttpMethodsFilter

      public static void addAllowHttpMethodsFilter(org.eclipse.jetty.servlet.ServletContextHandler root, List<String> allowedHttpMethods)
    • maybeAddHSTSPatternRule

      public static void maybeAddHSTSPatternRule(ServerConfig serverConfig, org.eclipse.jetty.rewrite.handler.RewriteHandler rewriteHandler)
    • maybeAddHSTSRewriteHandler

      public static void maybeAddHSTSRewriteHandler(ServerConfig serverConfig, org.eclipse.jetty.server.handler.HandlerList handlerList)
    • getGuiceFilterHolder

      public static org.eclipse.jetty.servlet.FilterHolder getGuiceFilterHolder(com.google.inject.Injector injector)
      Using this FilterHolder forces the underlying GuiceFilter to be instantiated with the 1-argument constructor that uses an injected non-static FilterPipeline. Since the FilterPipeline is non-static, multiple Jetty servers may be initialized by separate Guice Injectors running in the same JVM. This is currently needed only for running embedded tests.
      See Also:
      • GuiceFilter(com.google.inject.servlet.FilterPipeline)