Refine search
/** * Clear all of this session's attributes. */ public void clearAttributes() { for (Iterator<Map.Entry<String, Object>> it = this.attributes.entrySet().iterator(); it.hasNext();) { Map.Entry<String, Object> entry = it.next(); String name = entry.getKey(); Object value = entry.getValue(); it.remove(); if (value instanceof HttpSessionBindingListener) { ((HttpSessionBindingListener) value).valueUnbound(new HttpSessionBindingEvent(this, name, value)); } } }
protected void afterBound(String s, Object o) { if (o instanceof HttpSessionBindingListener) { HttpSessionBindingListener listener = (HttpSessionBindingListener) o; HttpSessionBindingEvent event = new HttpSessionBindingEvent(this, s, o); listener.valueBound(event); } }
@Override public void setAttribute(String name, @Nullable Object value) { assertIsValid(); Assert.notNull(name, "Attribute name must not be null"); if (value != null) { Object oldValue = this.attributes.put(name, value); if (value != oldValue) { if (oldValue instanceof HttpSessionBindingListener) { ((HttpSessionBindingListener) oldValue).valueUnbound(new HttpSessionBindingEvent(this, name, oldValue)); } if (value instanceof HttpSessionBindingListener) { ((HttpSessionBindingListener) value).valueBound(new HttpSessionBindingEvent(this, name, value)); } } } else { removeAttribute(name); } }
@Override public void valueUnbound(HttpSessionBindingEvent event) { if (!added) { List<HttpSessionAttributeListener> listeners = getEventListeners().get( HttpSessionAttributeListener.class); for (HttpSessionAttributeListener listener : listeners) { listener.attributeRemoved(event); } } if (value instanceof HttpSessionBindingListener) { ((HttpSessionBindingListener) value).valueUnbound(new HttpSessionBindingEvent(innerSession, name, value)); } }
@Override public void valueBound(HttpSessionBindingEvent event) { List<HttpSessionAttributeListener> listeners = getEventListeners().get( HttpSessionAttributeListener.class); for (HttpSessionAttributeListener listener : listeners) { if (added) { listener.attributeAdded(event); } else { listener.attributeReplaced(event); } } if (value instanceof HttpSessionBindingListener) { ((HttpSessionBindingListener) value).valueBound(new HttpSessionBindingEvent(innerSession, name, value)); } }
((HttpSessionListener) listener).sessionDestroyed((HttpSessionEvent) event); } else if (ReloadingListener.VALUE_BOUND.equals(identifier)) { ((HttpSessionBindingListener) listener).valueBound((HttpSessionBindingEvent) event); } else if (ReloadingListener.VALUE_UNBOUND.equals(identifier)) { ((HttpSessionBindingListener) listener).valueUnbound((HttpSessionBindingEvent) event); } else if (ReloadingListener.ATTR_ADDED.equals(identifier)) { ((HttpSessionAttributeListener) listener).attributeAdded((HttpSessionBindingEvent) event); } else if (ReloadingListener.ATTR_REMOVED.equals(identifier)) { ((HttpSessionAttributeListener) listener).attributeRemoved((HttpSessionBindingEvent) event); } else if (ReloadingListener.ATTR_REPLACED.equals(identifier)) { ((HttpSessionAttributeListener) listener).attributeReplaced((HttpSessionBindingEvent) event); } else if (ReloadingListener.CONTEXT_ATTR_ADDED.equals(identifier)) { ((ServletContextAttributeListener) listener).attributeAdded((ServletContextAttributeEvent) event);
/** * Notifies listeners that attribute was added. See {@link SessionNotifier} * {@link #attributeAdded(RepositoryBackedSession, String, Object)}. * <p> * If the added attribute <code>value</code> is a HttpSessionBindingListener, * it will receive the {@link HttpSessionBindingEvent}. If there are * {@link HttpSessionAttributeListener} instances associated to * {@link ServletContext}, they will be notified via * {@link HttpSessionAttributeListener#attributeAdded(HttpSessionBindingEvent)} * . */ @Override public void attributeAdded(RepositoryBackedSession session, String key, Object value) { // If the if (session instanceof HttpSession && value instanceof HttpSessionBindingListener) { ((HttpSessionBindingListener)value).valueBound(new HttpSessionBindingEvent((HttpSession)session, key)); } HttpSessionBindingEvent event = new HttpSessionBindingEvent((HttpSession)session, key, value); for (HttpSessionAttributeListener listener : descriptor.getHttpSessionAttributeListeners()) { listener.attributeAdded(event); } }
/** * Notifies listeners that attribute was replaced. See {@link SessionNotifier} * {@link #attributeReplaced(RepositoryBackedSession, String, Object)}. * <p> * If the the old value of attribute <code>replacedValue</code> is a * HttpSessionBindingListener, it will receive the * {@link HttpSessionBindingEvent}. If there are * {@link HttpSessionAttributeListener} instances associated to * {@link ServletContext}, they will be notified via * {@link HttpSessionAttributeListener#attributeReplaced(HttpSessionBindingEvent)} * . */ @Override public void attributeReplaced(RepositoryBackedSession session, String key, Object replacedValue) { if (session instanceof HttpSession && replacedValue instanceof HttpSessionBindingListener) { ((HttpSessionBindingListener)replacedValue).valueUnbound(new HttpSessionBindingEvent((HttpSession)session, key)); } HttpSessionBindingEvent event = new HttpSessionBindingEvent((HttpSession)session, key, replacedValue); for (HttpSessionAttributeListener listener : descriptor.getHttpSessionAttributeListeners()) { listener.attributeReplaced(event); } }
@Override public void valueUnbound(HttpSessionBindingEvent httpSessionBindingEvent) { if (_httpSessionBindingListeners == null) { return; } for (HttpSessionBindingListener httpSessionBindingListener : _httpSessionBindingListeners) { httpSessionBindingListener.valueUnbound(httpSessionBindingEvent); } }
@Override public void valueBound(HttpSessionBindingEvent httpSessionBindingEvent) { if (_httpSessionBindingListeners == null) { return; } for (HttpSessionBindingListener httpSessionBindingListener : _httpSessionBindingListeners) { httpSessionBindingListener.valueBound(httpSessionBindingEvent); } }
/** * Notifies listeners that attribute was removed. See {@link SessionNotifier} * {@link #attributeRemoved(RepositoryBackedSession, String, Object)}. * <p> * If the the old value of attribute <code>removedValue</code> is a * HttpSessionBindingListener, it will receive the * {@link HttpSessionBindingEvent}. If there are * {@link HttpSessionAttributeListener} instances associated to * {@link ServletContext}, they will be notified via * {@link HttpSessionAttributeListener#attributeRemoved(HttpSessionBindingEvent)} * . */ @Override public void attributeRemoved(RepositoryBackedSession session, String key, Object removedValue) { if (session instanceof HttpSession && removedValue instanceof HttpSessionBindingListener) { ((HttpSessionBindingListener)removedValue).valueUnbound(new HttpSessionBindingEvent((HttpSession)session, key)); } HttpSessionBindingEvent event = new HttpSessionBindingEvent((HttpSession)session, key); for (HttpSessionAttributeListener listener : descriptor.getHttpSessionAttributeListeners()) { listener.attributeRemoved(event); } }
HttpSessionBindingEvent event = new HttpSessionBindingEvent(this, key, oldValue); ((HttpSessionBindingListener)value).valueUnbound(event); HttpSessionBindingEvent event = new HttpSessionBindingEvent(this, key, value); if (value instanceof HttpSessionBindingListener) ((HttpSessionBindingListener)value).valueBound(event); listener.attributeReplaced(event); HttpSessionBindingEvent event = new HttpSessionBindingEvent(this, key, value); if (value instanceof HttpSessionBindingListener) ((HttpSessionBindingListener)value).valueBound(event);
@Override public void setAttribute(String name, @Nullable Object value) { assertIsValid(); Assert.notNull(name, "Attribute name must not be null"); if (value != null) { Object oldValue = this.attributes.put(name, value); if (value != oldValue) { if (oldValue instanceof HttpSessionBindingListener) { ((HttpSessionBindingListener) oldValue).valueUnbound(new HttpSessionBindingEvent(this, name, oldValue)); } if (value instanceof HttpSessionBindingListener) { ((HttpSessionBindingListener) value).valueBound(new HttpSessionBindingEvent(this, name, value)); } } } else { removeAttribute(name); } }
HttpSessionBindingEvent event = new HttpSessionBindingEvent(this, key, value); if (value instanceof HttpSessionBindingListener) ((HttpSessionBindingListener)value).valueBound(event); listener.attributeAdded(event); HttpSessionBindingEvent event = new HttpSessionBindingEvent(this, key, value); if (value instanceof HttpSessionBindingListener) ((HttpSessionBindingListener)value).valueBound(event);
@Override public void valueUnbound(HttpSessionBindingEvent httpSessionBindingEvent) { if (_httpSessionBindingListeners.isEmpty()) { return; } httpSessionBindingEvent = getHttpSessionBindingEvent( httpSessionBindingEvent); for (HttpSessionBindingListener httpSessionBindingListener : _httpSessionBindingListeners) { httpSessionBindingListener.valueUnbound(httpSessionBindingEvent); } }
@Override public void valueBound(HttpSessionBindingEvent httpSessionBindingEvent) { if (_httpSessionBindingListeners.isEmpty()) { return; } httpSessionBindingEvent = getHttpSessionBindingEvent( httpSessionBindingEvent); for (HttpSessionBindingListener httpSessionBindingListener : _httpSessionBindingListeners) { httpSessionBindingListener.valueBound(httpSessionBindingEvent); } }
/** * Notify any value unbound listeners. */ private void notifyValueUnbound(String name, Object oldValue) { if (oldValue == null) return; if (oldValue instanceof HttpSessionBindingListener) { HttpSessionBindingListener listener; listener = (HttpSessionBindingListener) oldValue; listener.valueUnbound(new HttpSessionBindingEvent(this, name, oldValue)); } // Notify the attributes listeners ArrayList listeners = _manager.getAttributeListeners(); if (listeners != null) { HttpSessionBindingEvent event; event = new HttpSessionBindingEvent(this, name, oldValue); for (int i = 0; i < listeners.size(); i++) { HttpSessionAttributeListener listener; listener = (HttpSessionAttributeListener) listeners.get(i); listener.attributeRemoved(event); } } }
HttpSessionBindingEvent event = new HttpSessionBindingEvent(this, key, oldValue); ((HttpSessionBindingListener)value).valueUnbound(event); HttpSessionBindingEvent event = new HttpSessionBindingEvent(this, key, value); if (value instanceof HttpSessionBindingListener) ((HttpSessionBindingListener)value).valueBound(event); listener.attributeReplaced(event); HttpSessionBindingEvent event = new HttpSessionBindingEvent(this, key, value); if (value instanceof HttpSessionBindingListener) ((HttpSessionBindingListener)value).valueBound(event);
@Override public void setAttribute(String name, Object value) { assertIsValid(); Assert.notNull(name, "Attribute name must not be null"); if (value != null) { this.attributes.put(name, value); if (value instanceof HttpSessionBindingListener) { ((HttpSessionBindingListener) value).valueBound(new HttpSessionBindingEvent(this, name, value)); } } else { removeAttribute(name); } }
@Override public void removeAttribute(String name) { assertIsValid(); Assert.notNull(name, "Attribute name must not be null"); Object value = this.attributes.remove(name); if (value instanceof HttpSessionBindingListener) { ((HttpSessionBindingListener) value).valueUnbound(new HttpSessionBindingEvent(this, name, value)); } }