SimpleHttpSessionListener.java :  » Web-Server » jo » com » tagtraum » servlettest » Java Open Source

Java Open Source » Web Server » jo 
jo » com » tagtraum » servlettest » SimpleHttpSessionListener.java
/*
 * Copyright  2002-2005tagtraum industries
 */
package com.tagtraum.servlettest;

import javax.servlet.http.HttpSessionListener;
import javax.servlet.http.HttpSessionEvent;
import java.util.List;
import java.util.ArrayList;

/**
 *
 * @author <a href="mailto:hs@tagtraum.com">Hendrik Schreiber</a>
 * @version 1.1beta1 ($Revision: 1.3 $)
 */
public class SimpleHttpSessionListener implements HttpSessionListener {

    public static final String CONTEXT_KEY = "SimpleHttpSessionListener";
    private List events = new ArrayList();
    private List methods = new ArrayList();

    public void sessionCreated(HttpSessionEvent event) {
        events.add(event);
        methods.add("sessionCreated");
        registerListener(event);
    }

    public void sessionDestroyed(HttpSessionEvent event) {
        events.add(event);
        methods.add("sessionDestroyed");
        registerListener(event);
    }

    public HttpSessionEvent lastEvent() {
        if (events.isEmpty()) return null;
        return (HttpSessionEvent)events.get(events.size()-1);
    }

    public String lastMethod() {
        if (methods.isEmpty()) return null;
        return (String)methods.get(methods.size()-1);
    }

    private void registerListener(HttpSessionEvent event) {
        if (event.getSession().getServletContext().getAttribute(CONTEXT_KEY) == null) {
            event.getSession().getServletContext().setAttribute(CONTEXT_KEY, this);
        }
    }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.