Package net.sf.wfnm.web

Source Code of net.sf.wfnm.web.SessionBindingFilter

/*
* WebFlow Navigation Manager: webflow definiton, server side navigation history and automatic session cleaning.
* Distributed under LGPL license at web site http://wfnm.sourceforge.net .
*/
package net.sf.wfnm.web;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


/**
* This filter replaces the http session with a wrapper which notify to the WFNM framework the binding/unbinding of
* objects to/from the original session.
*
* @author <a href="mailto:malbari@users.sourceforge.net">Maurizio Albari</a>
* @version 1.0.6
*/
public class SessionBindingFilter implements Filter {
    /**
     * Destroy the filter.
     */
    public void destroy() {
    }

    /**
     * Filter the request by replacing the request with a wrapper that returns the HttpSessionWrapper as a session
     * implementation.
     *
     * @param servletRequest the servlet request
     * @param servletResponse the servlet response
     * @param filterChain the filter chain
     *
     * @throws IOException if an I/O exception ocours
     * @throws ServletException if a servlet exception ocours
     */
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)
        throws IOException, ServletException {
        ServletRequest sessionBindingRequest = new HttpServletRequestWrapper((HttpServletRequest) servletRequest);
        HttpServletResponse response = (HttpServletResponse) servletResponse;
        ResponseFactory.addNoCacheHeaderDirective(response);
        filterChain.doFilter(sessionBindingRequest, servletResponse);
    }

    /**
     * Initialize the filter.
     *
     * @param filterConfig the filter configuration
     *
     * @throws ServletException if a servlet exception ocours
     */
    public void init(FilterConfig filterConfig) throws ServletException {
    }
}
TOP

Related Classes of net.sf.wfnm.web.SessionBindingFilter

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.