Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

org.acegisecurity.captcha
Class CaptchaValidationProcessingFilter  view CaptchaValidationProcessingFilter download CaptchaValidationProcessingFilter.java

java.lang.Object
  extended byorg.acegisecurity.captcha.CaptchaValidationProcessingFilter
All Implemented Interfaces:
javax.servlet.Filter, org.springframework.beans.factory.InitializingBean

public class CaptchaValidationProcessingFilter
extends java.lang.Object
implements org.springframework.beans.factory.InitializingBean, javax.servlet.Filter

Filter for web integration of the CaptchaServiceProxy.
It basically intercept calls containing the specific validation parameter, use the CaptchaServiceProxy to validate the request, and update the CaptchaSecurityContext if the request passed the validation.
This Filter should be placed after the ContextIntegration filter and before the CaptchaChannelProcessorTemplate filter in the filter stack in order to update the CaptchaSecurityContext before the humanity verification routine occurs.
This filter should only be used in conjunction with the CaptchaSecurityContext

Version:
$Id: CaptchaValidationProcessingFilter.java,v 1.4 2005/11/17 00:55:49 benalex Exp $

Field Summary
private  CaptchaServiceProxy captchaService
           
private  java.lang.String captchaValidationParameter
           
protected static org.apache.commons.logging.Log logger
           
 
Constructor Summary
CaptchaValidationProcessingFilter()
           
 
Method Summary
 void afterPropertiesSet()
          Invoked by a BeanFactory after it has set all bean properties supplied (and satisfied BeanFactoryAware and ApplicationContextAware).
 void destroy()
          Does nothing.
 void doFilter(javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, javax.servlet.FilterChain chain)
          The doFilter method of the Filter is called by the container each time a request/response pair is passed through the chain due to a client request for a resource at the end of the chain.
 CaptchaServiceProxy getCaptchaService()
           
 java.lang.String getCaptchaValidationParameter()
           
 void init(javax.servlet.FilterConfig filterConfig)
          Does nothing.
 void setCaptchaService(CaptchaServiceProxy captchaService)
           
 void setCaptchaValidationParameter(java.lang.String captchaValidationParameter)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected static final org.apache.commons.logging.Log logger

captchaService

private CaptchaServiceProxy captchaService

captchaValidationParameter

private java.lang.String captchaValidationParameter
Constructor Detail

CaptchaValidationProcessingFilter

public CaptchaValidationProcessingFilter()
Method Detail

setCaptchaService

public void setCaptchaService(CaptchaServiceProxy captchaService)

getCaptchaService

public CaptchaServiceProxy getCaptchaService()

setCaptchaValidationParameter

public void setCaptchaValidationParameter(java.lang.String captchaValidationParameter)

getCaptchaValidationParameter

public java.lang.String getCaptchaValidationParameter()

afterPropertiesSet

public void afterPropertiesSet()
                        throws java.lang.Exception
Description copied from interface: org.springframework.beans.factory.InitializingBean
Invoked by a BeanFactory after it has set all bean properties supplied (and satisfied BeanFactoryAware and ApplicationContextAware).

This method allows the bean instance to perform initialization only possible when all bean properties have been set and to throw an exception in the event of misconfiguration.

Specified by:
afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean

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 java.io.IOException,
                     javax.servlet.ServletException
Description copied from interface: javax.servlet.Filter
The doFilter method of the Filter is called by the container each time a request/response pair is passed through the chain due to a client request for a resource at the end of the chain. The FilterChain passed in to this method allows the Filter to pass on the request and response to the next entity in the chain.

A typical implementation of this method would follow the following pattern:-
1. Examine the request
2. Optionally wrap the request object with a custom implementation to filter content or headers for input filtering
3. Optionally wrap the response object with a custom implementation to filter content or headers for output filtering
4. a) Either invoke the next entity in the chain using the FilterChain object (chain.doFilter()),
4. b) or not pass on the request/response pair to the next entity in the filter chain to block the request processing
5. Directly set headers on the response after invocation of the next entity in the filter chain.

Specified by:
doFilter in interface javax.servlet.Filter

init

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

Specified by:
init in interface javax.servlet.Filter