com.sun.rave.web.ui.appbase.servlet
Class LifecycleListener

java.lang.Object
  extended by com.sun.rave.web.ui.appbase.servlet.LifecycleListener
All Implemented Interfaces:
java.util.EventListener, javax.servlet.http.HttpSessionActivationListener, javax.servlet.http.HttpSessionAttributeListener, javax.servlet.http.HttpSessionListener, javax.servlet.ServletContextAttributeListener, javax.servlet.ServletContextListener, javax.servlet.ServletRequestAttributeListener, javax.servlet.ServletRequestListener

public class LifecycleListener
extends java.lang.Object
implements javax.servlet.ServletContextAttributeListener, javax.servlet.ServletContextListener, javax.servlet.http.HttpSessionActivationListener, javax.servlet.http.HttpSessionAttributeListener, javax.servlet.http.HttpSessionListener, javax.servlet.ServletRequestAttributeListener, javax.servlet.ServletRequestListener

LifecycleListener implements the lifecycle startup and shutdown calls (init() and destroy()) for subclasses of AbstractApplicationBean, AbstractSessionBean, AbstractRequestBean, AbstractPageBean, and AbstractFragmentBean.

It must be registered with the servlet container as a listener, through an entry in either the /WEB-INF/web.xml resource or a tag library descriptor included in the web application.


Constructor Summary
LifecycleListener()
          Create a new lifecycle listener.
 
Method Summary
 void attributeAdded(javax.servlet.http.HttpSessionBindingEvent event)
          Respond to a session scope attribute being added.
 void attributeAdded(javax.servlet.ServletContextAttributeEvent event)
          Respond to an application scope attribute being added.
 void attributeAdded(javax.servlet.ServletRequestAttributeEvent event)
          Respond to a request scope attribute being added.
 void attributeRemoved(javax.servlet.http.HttpSessionBindingEvent event)
          Respond to a session scope attribute being removed.
 void attributeRemoved(javax.servlet.ServletContextAttributeEvent event)
          Respond to an application scope attribute being removed.
 void attributeRemoved(javax.servlet.ServletRequestAttributeEvent event)
          Respond to a request scope attribute being removed.
 void attributeReplaced(javax.servlet.http.HttpSessionBindingEvent event)
          Respond to a session scope attribute being replaced.
 void attributeReplaced(javax.servlet.ServletContextAttributeEvent event)
          Respond to an application scope attribute being replaced.
 void attributeReplaced(javax.servlet.ServletRequestAttributeEvent event)
          Respond to a request scope attribute being replaced.
 void contextDestroyed(javax.servlet.ServletContextEvent event)
          Respond to a context destroyed event.
 void contextInitialized(javax.servlet.ServletContextEvent event)
          Respond to a context created event.
 void requestDestroyed(javax.servlet.ServletRequestEvent event)
          Respond to a request destroyed event.
 void requestInitialized(javax.servlet.ServletRequestEvent event)
          Respond to a request created event.
 void sessionCreated(javax.servlet.http.HttpSessionEvent event)
          Respond to a session created event.
 void sessionDestroyed(javax.servlet.http.HttpSessionEvent event)
          Respond to a session destroyed event.
 void sessionDidActivate(javax.servlet.http.HttpSessionEvent event)
          Respond to a "session did activate" event.
 void sessionWillPassivate(javax.servlet.http.HttpSessionEvent event)
          Respond to a "session will passivate" event.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LifecycleListener

public LifecycleListener()

Create a new lifecycle listener.

Method Detail

contextInitialized

public void contextInitialized(javax.servlet.ServletContextEvent event)

Respond to a context created event. No special processing is required.

Specified by:
contextInitialized in interface javax.servlet.ServletContextListener
Parameters:
event - Event to be processed

contextDestroyed

public void contextDestroyed(javax.servlet.ServletContextEvent event)

Respond to a context destroyed event. Causes any application scope attribute that implements AbstractApplicationBean to be removed, triggering an attributeRemoved() event.

Specified by:
contextDestroyed in interface javax.servlet.ServletContextListener
Parameters:
event - Event to be processed

attributeAdded

public void attributeAdded(javax.servlet.ServletContextAttributeEvent event)

Respond to an application scope attribute being added. If the value is an AbstractApplicationBean, call its init() method.

Specified by:
attributeAdded in interface javax.servlet.ServletContextAttributeListener
Parameters:
event - Event to be processed

attributeReplaced

public void attributeReplaced(javax.servlet.ServletContextAttributeEvent event)

Respond to an application scope attribute being replaced. If the old value was an AbstractApplicationBean, call its destroy() method. If the new value is an AbstractApplicationBean, call its init() method.

Specified by:
attributeReplaced in interface javax.servlet.ServletContextAttributeListener
Parameters:
event - Event to be processed

attributeRemoved

public void attributeRemoved(javax.servlet.ServletContextAttributeEvent event)

Respond to an application scope attribute being removed. If the old value was an AbstractApplicationBean, call its destroy() method.

Specified by:
attributeRemoved in interface javax.servlet.ServletContextAttributeListener
Parameters:
event - Event to be processed

sessionCreated

public void sessionCreated(javax.servlet.http.HttpSessionEvent event)

Respond to a session created event. No special processing is required.

Specified by:
sessionCreated in interface javax.servlet.http.HttpSessionListener
Parameters:
event - Event to be processed

sessionDestroyed

public void sessionDestroyed(javax.servlet.http.HttpSessionEvent event)

Respond to a session destroyed event. Causes any session scope attribute that implements AbstractSessionBean to be removed, triggering an attributeRemoved() event.

Specified by:
sessionDestroyed in interface javax.servlet.http.HttpSessionListener
Parameters:
event - Event to be processed

sessionWillPassivate

public void sessionWillPassivate(javax.servlet.http.HttpSessionEvent event)

Respond to a "session will passivate" event. Notify all session scope attributes that are AbstractSessionBeans.

Specified by:
sessionWillPassivate in interface javax.servlet.http.HttpSessionActivationListener
Parameters:
event - Event to be processed

sessionDidActivate

public void sessionDidActivate(javax.servlet.http.HttpSessionEvent event)

Respond to a "session did activate" event. Notify all session scope attributes that are AbstractSessionBeans.

Specified by:
sessionDidActivate in interface javax.servlet.http.HttpSessionActivationListener
Parameters:
event - Event to be processed

attributeAdded

public void attributeAdded(javax.servlet.http.HttpSessionBindingEvent event)

Respond to a session scope attribute being added. If the value is an AbstractSessionBean, call its init() method.

Specified by:
attributeAdded in interface javax.servlet.http.HttpSessionAttributeListener
Parameters:
event - Event to be processed

attributeReplaced

public void attributeReplaced(javax.servlet.http.HttpSessionBindingEvent event)

Respond to a session scope attribute being replaced. Provided that the old and new values are not the same object, if the old value was an AbstractSessionBean, call its destroy() method; if the new value is an AbstractSessionBean, call its init() method. No-op if the old and new values are the same object.

Specified by:
attributeReplaced in interface javax.servlet.http.HttpSessionAttributeListener
Parameters:
event - Event to be processed

attributeRemoved

public void attributeRemoved(javax.servlet.http.HttpSessionBindingEvent event)

Respond to a session scope attribute being removed. If the old value was an AbstractSessionBean, call its destroy() method.

Specified by:
attributeRemoved in interface javax.servlet.http.HttpSessionAttributeListener
Parameters:
event - Event to be processed

requestInitialized

public void requestInitialized(javax.servlet.ServletRequestEvent event)

Respond to a request created event. No special processing is required.

Specified by:
requestInitialized in interface javax.servlet.ServletRequestListener
Parameters:
event - Event to be processed

requestDestroyed

public void requestDestroyed(javax.servlet.ServletRequestEvent event)

Respond to a request destroyed event. Causes any request scope attribute that implements AbstractRequestBean, AbstractPageBean, or AbstractFragmentBean to be removed, triggering an attributeRemoved() event.

Specified by:
requestDestroyed in interface javax.servlet.ServletRequestListener
Parameters:
event - Event to be processed

attributeAdded

public void attributeAdded(javax.servlet.ServletRequestAttributeEvent event)

Respond to a request scope attribute being added. If the value is an AccountPageBean, AbstractRequestBean, or AbstractFragmentBean, call its init() method.

Specified by:
attributeAdded in interface javax.servlet.ServletRequestAttributeListener
Parameters:
event - Event to be processed

attributeReplaced

public void attributeReplaced(javax.servlet.ServletRequestAttributeEvent event)

Respond to a request scope attribute being replaced. If the old value was an AbstractPageBean, AbstractRequestBean or AbstractFragmentBean, call its destroy() method. If the new value is an AbstractPageBean, AbstractRequestBean or AbstractFragmentBean, call its init() method.

Specified by:
attributeReplaced in interface javax.servlet.ServletRequestAttributeListener
Parameters:
event - Event to be processed

attributeRemoved

public void attributeRemoved(javax.servlet.ServletRequestAttributeEvent event)

Respond to a request scope attribute being removed. If the old value was an AbstractPageBean, AbstractRequestBean or AbstractFragmentBean, call its destroy() method.

Specified by:
attributeRemoved in interface javax.servlet.ServletRequestAttributeListener
Parameters:
event - Event to be processed