Examples of HttpSessionBindingEvent


Examples of javax.servlet.http.HttpSessionBindingEvent

  synchronized (attributes) {
      removeAttribute(name);
      attributes.put(name, value);
      if (value instanceof HttpSessionBindingListener)
    ((HttpSessionBindingListener) value).valueBound
        (new HttpSessionBindingEvent((HttpSession) this, name));
  }

    }
View Full Code Here

Examples of javax.servlet.http.HttpSessionBindingEvent

        // valueUnbound method, allowing it to save its state
        // correctly instead of just being lost into the etherworld
        else if (value instanceof HttpSessionBindingListener ) {
          try {
            ((HttpSessionBindingListener)value)
            .valueUnbound(new HttpSessionBindingEvent(this, key));
          } catch (Exception f) {
            // ignored
          }
        }
      }
View Full Code Here

Examples of javax.servlet.http.HttpSessionBindingEvent

        if ((manager != null) && manager.getDistributable() &&
          !isAttributeDistributable(name, value))
            throw new IllegalArgumentException
                (sm.getString("standardSession.setAttribute.iae", name));
        // Construct an event with the new value
        HttpSessionBindingEvent event = null;

        // Call the valueBound() method if necessary
        if (notify && value instanceof HttpSessionBindingListener) {
            // Don't call any notification if replacing with the same value
            Object oldValue = attributes.get(name);
            if (value != oldValue) {
                event = new HttpSessionBindingEvent(getSession(), name, value);
                try {
                    ((HttpSessionBindingListener) value).valueBound(event);
                } catch (Throwable t){
                    manager.getContainer().getLogger().error
                    (sm.getString("standardSession.bindingEvent"), t);
                }
            }
        }

        // Replace or add this attribute
        Object unbound = attributes.put(name, value);

        // Call the valueUnbound() method if necessary
        if (notify && (unbound != null) && (unbound != value) &&
            (unbound instanceof HttpSessionBindingListener)) {
            try {
                ((HttpSessionBindingListener) unbound).valueUnbound
                    (new HttpSessionBindingEvent(getSession(), name));
            } catch (Throwable t) {
                manager.getContainer().getLogger().error
                    (sm.getString("standardSession.bindingEvent"), t);
            }
        }
       
        if ( !notify ) return;
       
        // Notify interested application event listeners
        Context context = (Context) manager.getContainer();
        Object listeners[] = context.getApplicationEventListeners();
        if (listeners == null)
            return;
        for (int i = 0; i < listeners.length; i++) {
            if (!(listeners[i] instanceof HttpSessionAttributeListener))
                continue;
            HttpSessionAttributeListener listener =
                (HttpSessionAttributeListener) listeners[i];
            try {
                if (unbound != null) {
                    fireContainerEvent(context,
                                       "beforeSessionAttributeReplaced",
                                       listener);
                    if (event == null) {
                        event = new HttpSessionBindingEvent
                            (getSession(), name, unbound);
                    }
                    listener.attributeReplaced(event);
                    fireContainerEvent(context,
                                       "afterSessionAttributeReplaced",
                                       listener);
                } else {
                    fireContainerEvent(context,
                                       "beforeSessionAttributeAdded",
                                       listener);
                    if (event == null) {
                        event = new HttpSessionBindingEvent
                            (getSession(), name, value);
                    }
                    listener.attributeAdded(event);
                    fireContainerEvent(context,
                                       "afterSessionAttributeAdded",
View Full Code Here

Examples of javax.servlet.http.HttpSessionBindingEvent

        if (!notify || (value == null)) {
            return;
        }

        // Call the valueUnbound() method if necessary
        HttpSessionBindingEvent event = null;
        if (value instanceof HttpSessionBindingListener) {
            event = new HttpSessionBindingEvent(getSession(), name, value);
            ((HttpSessionBindingListener) value).valueUnbound(event);
        }

        // Notify interested application event listeners
        Context context = (Context) manager.getContainer();
        Object listeners[] = context.getApplicationEventListeners();
        if (listeners == null)
            return;
        for (int i = 0; i < listeners.length; i++) {
            if (!(listeners[i] instanceof HttpSessionAttributeListener))
                continue;
            HttpSessionAttributeListener listener =
                (HttpSessionAttributeListener) listeners[i];
            try {
                fireContainerEvent(context,
                                   "beforeSessionAttributeRemoved",
                                   listener);
                if (event == null) {
                    event = new HttpSessionBindingEvent
                        (getSession(), name, value);
                }
                listener.attributeRemoved(event);
                fireContainerEvent(context,
                                   "afterSessionAttributeRemoved",
View Full Code Here

Examples of javax.servlet.http.HttpSessionBindingEvent

            return;
        }
        final HttpSessionImpl httpSession = SecurityActions.forSession(session, servletContext, false);
        applicationListeners.httpSessionAttributeAdded(httpSession, name, value);
        if (value instanceof HttpSessionBindingListener) {
            ((HttpSessionBindingListener) value).valueBound(new HttpSessionBindingEvent(httpSession, name, value));
        }
    }
View Full Code Here

Examples of javax.servlet.http.HttpSessionBindingEvent

            return;
        }
        final HttpSessionImpl httpSession = SecurityActions.forSession(session, servletContext, false);
        if (old != value) {
            if (old instanceof HttpSessionBindingListener) {
                ((HttpSessionBindingListener) old).valueUnbound(new HttpSessionBindingEvent(httpSession, name, old));
            }
            applicationListeners.httpSessionAttributeReplaced(httpSession, name, old);
        }
        if (value instanceof HttpSessionBindingListener) {
            ((HttpSessionBindingListener) value).valueBound(new HttpSessionBindingEvent(httpSession, name, value));
        }
    }
View Full Code Here

Examples of javax.servlet.http.HttpSessionBindingEvent

        }
        final HttpSessionImpl httpSession = SecurityActions.forSession(session, servletContext, false);
        if (old != null) {
            applicationListeners.httpSessionAttributeRemoved(httpSession, name, old);
            if (old instanceof HttpSessionBindingListener) {
                ((HttpSessionBindingListener) old).valueUnbound(new HttpSessionBindingEvent(httpSession, name, old));
            }
        }
    }
View Full Code Here

Examples of javax.servlet.http.HttpSessionBindingEvent

            throw new IllegalArgumentException
                (sm.getString("standardSession.setAttribute.iae"));

       
        // Construct an event with the new value
        HttpSessionBindingEvent event = null;
       
        // Call the valueBound() method if necessary
        if ( value instanceof HttpSessionBindingListener ) {
            event = new HttpSessionBindingEvent(this, name, value);
            try {
                ( (HttpSessionBindingListener) value).valueBound(event);
            } catch ( Exception x ) {
                log.error("Session binding listener throw an exception",x);
            }
        }
       
        // Replace or add this attribute
        Object unbound = attributes.put(name, value);

        // Call the valueUnbound() method if necessary
        if ((unbound != null) &&
            (unbound instanceof HttpSessionBindingListener)) {
            try {
                ( (HttpSessionBindingListener) unbound).valueUnbound
                    (new HttpSessionBindingEvent( (HttpSession)this, name));
            } catch ( Exception x ) {
                log.error("Session binding listener throw an exception",x);
            }

        }


        // Notify interested application event listeners
        Context context = (Context) manager.getContainer();
        //fix for standalone manager without container
        if ( context != null ) {
            Object listeners[] = context.getApplicationEventListeners();
            if (listeners == null)
                return;
            for (int i = 0; i < listeners.length; i++) {
                if (! (listeners[i] instanceof HttpSessionAttributeListener))
                    continue;
                HttpSessionAttributeListener listener =
                    (HttpSessionAttributeListener) listeners[i];
                try {
                    if (unbound != null) {
                        fireContainerEvent(context,
                                           "beforeSessionAttributeReplaced",
                                           listener);
                        if (event == null) {
                            event = new HttpSessionBindingEvent
                                (this, name, unbound);
                        }
                        listener.attributeReplaced(event);
                        fireContainerEvent(context,
                                           "afterSessionAttributeReplaced",
                                           listener);
                    } else {
                        fireContainerEvent(context,
                                           "beforeSessionAttributeAdded",
                                           listener);
                        if (event == null) {
                            event = new HttpSessionBindingEvent
                                (this, name, unbound);
                        }
                        listener.attributeAdded(event);
                        fireContainerEvent(context,
                                           "afterSessionAttributeAdded",
View Full Code Here

Examples of javax.servlet.http.HttpSessionBindingEvent

        if (!notify) {
            return;
        }

        // Call the valueUnbound() method if necessary
        HttpSessionBindingEvent event =
          new HttpSessionBindingEvent((HttpSession) this, name, value);
        if ((value != null) &&
            (value instanceof HttpSessionBindingListener))
            try {
                ( (HttpSessionBindingListener) value).valueUnbound(event);
            } catch ( Exception x ) {
View Full Code Here

Examples of javax.servlet.http.HttpSessionBindingEvent

      public void setAttribute(String name, Object value){

        attributes.put(name,(Serializable)value);
        if( value != null && value instanceof HttpSessionBindingListener ){
          try{
            ((HttpSessionBindingListener)value).valueBound(new HttpSessionBindingEvent(this,name));
          }
          catch( Exception excp ){
            log.error(excp);
          }
        }
View Full Code Here
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.