You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2013/05/29 22:57:46 UTC

git commit: WICKET-5213 Add ISessionListener#onUnbound(String sessionId)

Updated Branches:
  refs/heads/master 603b2f587 -> 26b3d2abc


WICKET-5213 Add ISessionListener#onUnbound(String sessionId)


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/26b3d2ab
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/26b3d2ab
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/26b3d2ab

Branch: refs/heads/master
Commit: 26b3d2abc95780816290113ee4b8f233ca92249f
Parents: 603b2f5
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Wed May 29 23:57:22 2013 +0300
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Wed May 29 23:57:22 2013 +0300

----------------------------------------------------------------------
 .../org/apache/wicket/cdi/SessionInjector.java     |    5 +++++
 .../main/java/org/apache/wicket/Application.java   |    2 ++
 .../java/org/apache/wicket/ISessionListener.java   |    8 ++++++++
 .../apache/wicket/SessionListenerCollection.java   |   13 +++++++++++++
 4 files changed, 28 insertions(+), 0 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/26b3d2ab/wicket-cdi/src/main/java/org/apache/wicket/cdi/SessionInjector.java
----------------------------------------------------------------------
diff --git a/wicket-cdi/src/main/java/org/apache/wicket/cdi/SessionInjector.java b/wicket-cdi/src/main/java/org/apache/wicket/cdi/SessionInjector.java
index c4c6bdc..7236086 100644
--- a/wicket-cdi/src/main/java/org/apache/wicket/cdi/SessionInjector.java
+++ b/wicket-cdi/src/main/java/org/apache/wicket/cdi/SessionInjector.java
@@ -43,4 +43,9 @@ class SessionInjector extends AbstractInjector implements ISessionListener
 		postConstruct(session);
 	}
 
+	@Override
+	public void onUnbound(String sessionId)
+	{
+	}
+
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/26b3d2ab/wicket-core/src/main/java/org/apache/wicket/Application.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/Application.java b/wicket-core/src/main/java/org/apache/wicket/Application.java
index 98a7145..bb39537 100644
--- a/wicket-core/src/main/java/org/apache/wicket/Application.java
+++ b/wicket-core/src/main/java/org/apache/wicket/Application.java
@@ -478,6 +478,8 @@ public abstract class Application implements UnboundListener, IEventSink
 	public void sessionUnbound(final String sessionId)
 	{
 		internalGetPageManager().sessionExpired(sessionId);
+
+		getSessionListeners().onUnbound(sessionId);
 	}
 
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/26b3d2ab/wicket-core/src/main/java/org/apache/wicket/ISessionListener.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/ISessionListener.java b/wicket-core/src/main/java/org/apache/wicket/ISessionListener.java
index 73afbbf..b731f52 100644
--- a/wicket-core/src/main/java/org/apache/wicket/ISessionListener.java
+++ b/wicket-core/src/main/java/org/apache/wicket/ISessionListener.java
@@ -29,4 +29,12 @@ public interface ISessionListener
 	 * @param session
 	 */
 	void onCreated(Session session);
+
+	/**
+	 * Informs the listener that session with specific id has been unbound.
+	 *
+	 * @param sessionId
+	 *          the id of the unbound session
+	 */
+	void onUnbound(String sessionId);
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/26b3d2ab/wicket-core/src/main/java/org/apache/wicket/SessionListenerCollection.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/SessionListenerCollection.java b/wicket-core/src/main/java/org/apache/wicket/SessionListenerCollection.java
index 83f33f7..49d0105 100644
--- a/wicket-core/src/main/java/org/apache/wicket/SessionListenerCollection.java
+++ b/wicket-core/src/main/java/org/apache/wicket/SessionListenerCollection.java
@@ -45,4 +45,17 @@ public class SessionListenerCollection extends ListenerCollection<ISessionListen
 		});
 	}
 
+	@Override
+	public void onUnbound(final String sessionId)
+	{
+		notify(new INotifier<ISessionListener>()
+		{
+			@Override
+			public void notify(ISessionListener listener)
+			{
+				listener.onUnbound(sessionId);
+			}
+		});
+	}
+
 }