use of javax.servlet.http.HttpSessionBindingEvent in project spring-framework by spring-projects.
the class MockHttpSession method setAttribute.
@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);
}
}
use of javax.servlet.http.HttpSessionBindingEvent in project spring-framework by spring-projects.
the class MockHttpSession method clearAttributes.
/**
* 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));
}
}
}
use of javax.servlet.http.HttpSessionBindingEvent in project wildfly by wildfly.
the class InfinispanSessionManager method removed.
@CacheEntryRemoved
public void removed(CacheEntryRemovedEvent<SessionCreationMetaDataKey, ?> event) {
if (event.isPre()) {
String id = event.getKey().getValue();
InfinispanWebLogger.ROOT_LOGGER.tracef("Session %s will be removed", id);
Map.Entry<MV, AV> value = this.factory.findValue(id);
if (value != null) {
ImmutableSession session = this.factory.createImmutableSession(id, value);
ImmutableSessionAttributes attributes = session.getAttributes();
HttpSession httpSession = new ImmutableHttpSessionAdapter(session, this.context);
for (String name : attributes.getAttributeNames()) {
Object attribute = attributes.getAttribute(name);
if (attribute instanceof HttpSessionBindingListener) {
HttpSessionBindingListener listener = (HttpSessionBindingListener) attribute;
listener.valueUnbound(new HttpSessionBindingEvent(httpSession, name, attribute));
}
}
if (this.recorder != null) {
this.recorder.record(session);
}
}
}
}
use of javax.servlet.http.HttpSessionBindingEvent in project gocd by gocd.
the class MockHttpSession method removeAttribute.
@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));
}
}
use of javax.servlet.http.HttpSessionBindingEvent in project gocd by gocd.
the class MockHttpSession method setAttribute.
@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);
}
}
Aggregations