Sorry, was referring to this thread. Seems like it's winding down and just looking for a clear idea of what the current thinking is.

-David

On Mar 7, 2006, at 9:36 AM, Dain Sundstrom wrote:

Looks good.

-dain

On Mar 6, 2006, at 12:49 AM, Greg Wilkins wrote:

Dain Sundstrom wrote:

My guess is we're going to need to add an event notification system to the Session APIs. What do you think about just crib off of the servlet
ones.  I think we could just smash the three session listener
interfaces into something like this:

public interface SessionListener extends Listener {
    void valueBound(SessionEvent event);
    void valueUnbound(SessionEvent event);
    void attributeAdded(SessionEvent event);
    void attributeRemoved(SessionEvent event);
    void attributeRemoved(SessionEvent event);

I think you mean:
 void attributeReplaced(SessionEvent event);


    void valueBound(SessionEvent event);
    void valueUnbound(SessionEvent event);
    void sessionCreated(SessionEvent event)
    void sessionDestroyed(SessionEvent event)
}

public class SessionEvent extends Event {
    Session getSession();
    String getName();
    String getValue();
}

We would bind a listener with a method on the Locator:

    void addSessionListener(SessionListener listener);
    void removeSessionListener(SessionListener listener);



that would certainly do it - the only change I'd like to see
is that the SessionEvent is


 public class SessionEvent extends Event {
     Session getSession();
     String getName();
     String getOldValue();
     String getNewValue();
 }

As it is confusing for remove and replace what getValue() returns.

Also as the bound/unbound events are actually called on the
value itself, you need both old and new values so you can call
unbind and bind during a replace.

cheers


Reply via email to