Package org.apache.shiro.web.servlet
Class AbstractFilter
- java.lang.Object
-
- org.apache.shiro.web.servlet.ServletContextSupport
-
- org.apache.shiro.web.servlet.AbstractFilter
-
- All Implemented Interfaces:
javax.servlet.Filter
- Direct Known Subclasses:
NameableFilter
public abstract class AbstractFilter extends ServletContextSupport implements javax.servlet.Filter
Base abstract Filter simplifying Filter initialization andaccessto init parameters. Subclass initialization logic should be performed by overriding theonFilterConfigSet()template method. FilterChain execution logic (theFilter.doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain)method is left to subclasses.- Since:
- 1.0
-
-
Field Summary
Fields Modifier and Type Field Description protected javax.servlet.FilterConfigfilterConfigFilterConfig provided by the Servlet container at start-up.
-
Constructor Summary
Constructors Constructor Description AbstractFilter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddestroy()Default no-op implementation that can be overridden by subclasses for custom cleanup behavior.javax.servlet.FilterConfiggetFilterConfig()Returns the servlet container specifiedFilterConfiginstance provided atstartup.protected StringgetInitParam(String paramName)Returns the value for the namedinit-param, ornullif there was noinit-paramspecified by that name.voidinit(javax.servlet.FilterConfig filterConfig)Sets the filter'sfilterConfigand then immediately callsonFilterConfigSet()to trigger any processing a subclass might wish to perform.protected voidonFilterConfigSet()Template method to be overridden by subclasses to perform initialization logic at start-up.voidsetFilterConfig(javax.servlet.FilterConfig filterConfig)Sets the FilterConfig and theServletContextas attributes of this class for use by subclasses.-
Methods inherited from class org.apache.shiro.web.servlet.ServletContextSupport
getContextAttribute, getContextInitParam, getServletContext, removeContextAttribute, setContextAttribute, setServletContext, toString, toStringBuilder
-
-
-
-
Method Detail
-
getFilterConfig
public javax.servlet.FilterConfig getFilterConfig()
Returns the servlet container specifiedFilterConfiginstance provided atstartup.- Returns:
- the servlet container specified
FilterConfiginstance provided at start-up.
-
setFilterConfig
public void setFilterConfig(javax.servlet.FilterConfig filterConfig)
Sets the FilterConfig and theServletContextas attributes of this class for use by subclasses. That is:this.filterConfig = filterConfig; setServletContext(filterConfig.getServletContext());
- Parameters:
filterConfig- the FilterConfig instance provided by the Servlet container at start-up.
-
getInitParam
protected String getInitParam(String paramName)
Returns the value for the namedinit-param, ornullif there was noinit-paramspecified by that name.- Parameters:
paramName- the name of theinit-param- Returns:
- the value for the named
init-param, ornullif there was noinit-paramspecified by that name.
-
init
public final void init(javax.servlet.FilterConfig filterConfig) throws javax.servlet.ServletExceptionSets the filter'sfilterConfigand then immediately callsonFilterConfigSet()to trigger any processing a subclass might wish to perform.- Specified by:
initin interfacejavax.servlet.Filter- Parameters:
filterConfig- the servlet container supplied FilterConfig instance.- Throws:
javax.servlet.ServletException- ifonFilterConfigSet()throws an Exception.
-
onFilterConfigSet
protected void onFilterConfigSet() throws ExceptionTemplate method to be overridden by subclasses to perform initialization logic at start-up. TheServletContextandFilterConfigwill be accessible (and non-null) at the time this method is invoked via thegetServletContext()andgetFilterConfig()methods respectively.init-paramvalues may be conveniently obtained via thegetInitParam(String)method.- Throws:
Exception- if the subclass has an error upon initialization.
-
destroy
public void destroy()
Default no-op implementation that can be overridden by subclasses for custom cleanup behavior.- Specified by:
destroyin interfacejavax.servlet.Filter
-
-