Package spark.servlet

Class SparkFilter

java.lang.Object
spark.servlet.SparkFilter
All Implemented Interfaces:
javax.servlet.Filter

public class SparkFilter extends Object implements javax.servlet.Filter
Filter that can be configured to be used in a web.xml file. Needs the init parameter 'applicationClass' set to the application class where the adding of routes should be made.
  • Field Details

    • LOG

      private static final org.slf4j.Logger LOG
    • APPLICATION_CLASS_PARAM

      public static final String APPLICATION_CLASS_PARAM
      See Also:
    • filterPath

      private String filterPath
    • matcherFilter

      private MatcherFilter matcherFilter
    • applications

      private SparkApplication[] applications
      It contains all the Spark application instances that was declared in the filter configuration. They can be one or more class names separated by commas.
  • Constructor Details

    • SparkFilter

      public SparkFilter()
  • Method Details

    • init

      public void init(javax.servlet.FilterConfig filterConfig) throws javax.servlet.ServletException
      Specified by:
      init in interface javax.servlet.Filter
      Throws:
      javax.servlet.ServletException
    • getApplication

      @Deprecated protected SparkApplication getApplication(javax.servlet.FilterConfig filterConfig) throws javax.servlet.ServletException
      Deprecated.
      Returns an instance of SparkApplication which on which init() will be called. Default implementation looks up the class name in the filterConfig using the key "applicationClass". Subclasses can override this method to use different techniques to obtain an instance (i.e. dependency injection).
      Parameters:
      filterConfig - the filter configuration for retrieving parameters passed to this filter.
      Returns:
      the spark application containing the configuration.
      Throws:
      javax.servlet.ServletException - if anything went wrong.
    • getApplication

      protected SparkApplication getApplication(String applicationClassName) throws javax.servlet.ServletException
      Returns an instance of SparkApplication which on which init() will be called. Default implementation looks up the class name in the filterConfig using the key "applicationClass". Subclasses can override this method to use different techniques to obtain an instance (i.e. dependency injection).
      Parameters:
      applicationClassName - the spark application class name passed to this filter.
      Returns:
      the spark application containing the configuration.
      Throws:
      javax.servlet.ServletException - if anything went wrong.
    • getApplications

      protected SparkApplication[] getApplications(javax.servlet.FilterConfig filterConfig) throws javax.servlet.ServletException
      Returns the instances of SparkApplication which on which init() will be called. Default implementation looks up the class names in the filterConfig using the key "applicationClass". Subclasses can override this method to use different techniques to obtain an instance (i.e. dependency injection).
      Parameters:
      filterConfig - the filter configuration for retrieving parameters passed to this filter.
      Returns:
      the spark applications containing the configuration.
      Throws:
      javax.servlet.ServletException - if anything went wrong.
    • doFilter

      public void doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain) throws IOException, javax.servlet.ServletException
      Specified by:
      doFilter in interface javax.servlet.Filter
      Throws:
      IOException
      javax.servlet.ServletException
    • destroy

      public void destroy()
      Specified by:
      destroy in interface javax.servlet.Filter