org.acegisecurity.concurrent
Class ConcurrentSessionFilter

java.lang.Object
  extended by org.acegisecurity.concurrent.ConcurrentSessionFilter
All Implemented Interfaces:
javax.servlet.Filter, org.springframework.beans.factory.InitializingBean

public class ConcurrentSessionFilter
extends Object
implements javax.servlet.Filter, org.springframework.beans.factory.InitializingBean

Filter required by concurrent session handling package.

This filter performs two functions. First, it calls SessionRegistry.refreshLastRequest(String) for each request. That way, registered sessions always have a correct "last update" date/time. Second, it retrieves SessionInformation from the SessionRegistry for each request and checks if the session has been marked as expired. If it has been marked as expired, the session is invalidated. The invalidation of the session will also cause the request to redirect to the URL specified, and a HttpSessionDestroyedEvent to be published via the HttpSessionEventPublisher registered in web.xml.

Version:
$Id: ConcurrentSessionFilter.java 1496 2006-05-23 13:38:33Z benalex $
Author:
Ben Alex

Constructor Summary
ConcurrentSessionFilter()
           
 
Method Summary
 void afterPropertiesSet()
           
 void destroy()
          Does nothing.
 void doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain)
           
 void init(javax.servlet.FilterConfig arg0)
          Does nothing.
 void setExpiredUrl(String expiredUrl)
           
 void setSessionRegistry(SessionRegistry sessionRegistry)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConcurrentSessionFilter

public ConcurrentSessionFilter()
Method Detail

afterPropertiesSet

public void afterPropertiesSet()
                        throws Exception
Specified by:
afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
Throws:
Exception

destroy

public void destroy()
Does nothing. We use IoC container lifecycle services instead.

Specified by:
destroy in interface javax.servlet.Filter

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

init

public void init(javax.servlet.FilterConfig arg0)
          throws javax.servlet.ServletException
Does nothing. We use IoC container lifecycle services instead.

Specified by:
init in interface javax.servlet.Filter
Parameters:
arg0 - ignored
Throws:
javax.servlet.ServletException - ignored

setExpiredUrl

public void setExpiredUrl(String expiredUrl)

setSessionRegistry

public void setSessionRegistry(SessionRegistry sessionRegistry)


Copyright © 2004-2012 Interface21, Inc. All Rights Reserved.