Skip to content
Snippets Groups Projects
Unverified Commit fea04446 authored by Thomas Mortagne's avatar Thomas Mortagne
Browse files

XWIKI-22862: Provider a jakarta version of SessionCreatedEvent and SessionDestroyedEvent

parent 2557813a
No related branches found
No related tags found
No related merge requests found
......@@ -40,7 +40,9 @@
* @version $Id$
* @since 14.5
* @since 14.4.1
* @deprecated use {@link HttpSessionCreatedEvent} instead
*/
@Deprecated(since = "17.1.0RC1")
public class SessionCreatedEvent implements Event
{
@Override
......
......@@ -40,7 +40,9 @@
* @version $Id$
* @since 14.5
* @since 14.4.1
* @deprecated use {@link HttpSessionDestroyedEvent} instead
*/
@Deprecated(since = "17.1.0RC1")
public class SessionDestroyedEvent implements Event
{
@Override
......
......@@ -34,6 +34,8 @@
import org.xwiki.component.phase.Disposable;
import org.xwiki.component.phase.Initializable;
import org.xwiki.component.phase.InitializationException;
import org.xwiki.container.servlet.events.HttpSessionCreatedEvent;
import org.xwiki.container.servlet.events.HttpSessionDestroyedEvent;
import org.xwiki.container.servlet.events.SessionCreatedEvent;
import org.xwiki.container.servlet.events.SessionDestroyedEvent;
import org.xwiki.jakartabridge.servlet.JakartaServletBridge;
......@@ -80,6 +82,7 @@ public void sessionCreated(HttpSessionEvent se)
{
HttpSession session = se.getSession();
this.sessionsList.add(session);
this.observationManager.notify(new HttpSessionCreatedEvent(), session, null);
// This event is expected to be associated with a javax version of the session
this.observationManager.notify(new SessionCreatedEvent(), JakartaServletBridge.toJavax(session), null);
}
......@@ -89,6 +92,7 @@ public void sessionDestroyed(HttpSessionEvent se)
{
HttpSession session = se.getSession();
this.sessionsList.remove(session);
this.observationManager.notify(new HttpSessionDestroyedEvent(), session, null);
// This event is expected to be associated with a javax version of the session
this.observationManager.notify(new SessionDestroyedEvent(), JakartaServletBridge.toJavax(session), null);
}
......
......@@ -26,6 +26,8 @@
import org.junit.jupiter.api.Test;
import org.xwiki.component.manager.ComponentLifecycleException;
import org.xwiki.container.servlet.events.HttpSessionCreatedEvent;
import org.xwiki.container.servlet.events.HttpSessionDestroyedEvent;
import org.xwiki.container.servlet.events.SessionCreatedEvent;
import org.xwiki.container.servlet.events.SessionDestroyedEvent;
import org.xwiki.jakartabridge.servlet.JakartaServletBridge;
......@@ -71,10 +73,12 @@ void sessionCreatedAndDestroyed()
this.httpSessionManager.sessionCreated(httpSessionEvent);
assertEquals(1, this.httpSessionManager.getSessionList().size());
assertEquals(jakartaSession, this.httpSessionManager.getSessionList().get(0));
verify(this.observationManager).notify(any(HttpSessionCreatedEvent.class), eq(jakartaSession), isNull());
verify(this.observationManager).notify(any(SessionCreatedEvent.class), eq(javaxSession), isNull());
this.httpSessionManager.sessionDestroyed(httpSessionEvent);
assertTrue(this.httpSessionManager.getSessionList().isEmpty());
verify(this.observationManager).notify(any(HttpSessionDestroyedEvent.class), eq(jakartaSession), isNull());
verify(this.observationManager).notify(any(SessionDestroyedEvent.class), eq(javaxSession), isNull());
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment