org.tynamo.security.shiro.authz
Class PortFilter
java.lang.Object
org.apache.shiro.web.servlet.ServletContextSupport
org.apache.shiro.web.servlet.AbstractFilter
org.apache.shiro.web.servlet.NameableFilter
org.apache.shiro.web.servlet.OncePerRequestFilter
org.apache.shiro.web.servlet.AdviceFilter
org.tynamo.security.shiro.AccessControlFilter
org.tynamo.security.shiro.authz.AuthorizationFilter
org.tynamo.security.shiro.authz.PortFilter
- All Implemented Interfaces:
- javax.servlet.Filter, org.apache.shiro.util.Nameable
- Direct Known Subclasses:
- SslFilter
public class PortFilter
- extends AuthorizationFilter
A copy of Shiro's 1.2.0 PortFilter that works with tapestry-security 0.4.x
A Filter that requires the request to be on a specific port, and if not, redirects to the same URL on that port.
- Since:
- 0.4.1
| Fields inherited from class org.apache.shiro.web.servlet.OncePerRequestFilter |
ALREADY_FILTERED_SUFFIX |
| Fields inherited from class org.apache.shiro.web.servlet.AbstractFilter |
filterConfig |
|
Method Summary |
int |
getPort()
|
protected String |
getScheme(String requestScheme,
int port)
|
protected boolean |
isAccessAllowed(javax.servlet.ServletRequest request,
javax.servlet.ServletResponse response,
Object mappedValue)
Returns true if the request is allowed to proceed through the filter normally, or false
if the request should be handled by the
onAccessDenied(request,response,mappedValue)
method instead. |
protected boolean |
onAccessDenied(javax.servlet.ServletRequest request,
javax.servlet.ServletResponse response,
Object mappedValue)
Redirects the request to the same exact incoming URL, but with the port listed in the filter's configuration. |
void |
setPort(int port)
|
protected int |
toPort(Object mappedValue)
|
| Methods inherited from class org.tynamo.security.shiro.AccessControlFilter |
addConfig, getLoginUrl, getPageService, getSubject, getSuccessUrl, isLoginRequest, isRedirectToSavedUrl, onPreHandle, preHandle, redirectToLogin, saveRequest, saveRequestAndRedirectToLogin, setConfig, setLoginUrl, setRedirectToSavedUrl, setSuccessUrl |
| Methods inherited from class org.apache.shiro.web.servlet.AdviceFilter |
afterCompletion, cleanup, doFilterInternal, executeChain, postHandle |
| Methods inherited from class org.apache.shiro.web.servlet.OncePerRequestFilter |
doFilter, getAlreadyFilteredAttributeName, isEnabled, isEnabled, setEnabled, shouldNotFilter |
| Methods inherited from class org.apache.shiro.web.servlet.NameableFilter |
getName, setName, toStringBuilder |
| Methods inherited from class org.apache.shiro.web.servlet.AbstractFilter |
destroy, getFilterConfig, getInitParam, init, onFilterConfigSet, setFilterConfig |
| Methods inherited from class org.apache.shiro.web.servlet.ServletContextSupport |
getContextAttribute, getContextInitParam, getServletContext, removeContextAttribute, setContextAttribute, setServletContext, toString |
DEFAULT_HTTP_PORT
public static final int DEFAULT_HTTP_PORT
- See Also:
- Constant Field Values
HTTP_SCHEME
public static final String HTTP_SCHEME
- See Also:
- Constant Field Values
PortFilter
public PortFilter(PageService pageService)
getPort
public int getPort()
setPort
public void setPort(int port)
toPort
protected int toPort(Object mappedValue)
isAccessAllowed
protected boolean isAccessAllowed(javax.servlet.ServletRequest request,
javax.servlet.ServletResponse response,
Object mappedValue)
throws Exception
- Description copied from class:
AccessControlFilter
- Returns
true if the request is allowed to proceed through the filter normally, or false
if the request should be handled by the
onAccessDenied(request,response,mappedValue)
method instead.
- Specified by:
isAccessAllowed in class AccessControlFilter
- Parameters:
request - the incoming ServletRequestresponse - the outgoing ServletResponsemappedValue - the filter-specific config value mapped to this filter in the URL rules mappings.
- Returns:
true if the request should proceed through the filter normally, false if the
request should be processed by this filter's
AccessControlFilter.onAccessDenied(ServletRequest,ServletResponse,Object) method instead.
- Throws:
Exception - if an error occurs during processing.
getScheme
protected String getScheme(String requestScheme,
int port)
onAccessDenied
protected boolean onAccessDenied(javax.servlet.ServletRequest request,
javax.servlet.ServletResponse response,
Object mappedValue)
throws IOException
- Redirects the request to the same exact incoming URL, but with the port listed in the filter's configuration.
- Overrides:
onAccessDenied in class AccessControlFilter
- Parameters:
request - the incoming ServletRequestresponse - the outgoing ServletResponsemappedValue - the config specified for the filter in the matching request's filter chain.
- Returns:
false always to force a redirect.
- Throws:
IOException
Copyright © 2004-2012. All Rights Reserved.