You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by kn...@apache.org on 2010/01/26 23:58:55 UTC

svn commit: r903475 - /wicket/trunk/wicket/src/main/java/org/apache/wicket/pageStore/PersistentPageManager.java

Author: knopp
Date: Tue Jan 26 22:58:55 2010
New Revision: 903475

URL: http://svn.apache.org/viewvc?rev=903475&view=rev
Log:
page expiration fix

Modified:
    wicket/trunk/wicket/src/main/java/org/apache/wicket/pageStore/PersistentPageManager.java

Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/pageStore/PersistentPageManager.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/pageStore/PersistentPageManager.java?rev=903475&r1=903474&r2=903475&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/pageStore/PersistentPageManager.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/pageStore/PersistentPageManager.java Tue Jan 26 22:58:55 2010
@@ -53,6 +53,11 @@
 		this.applicationName = applicationName;
 		this.pageStore = pageStore;
 
+		if (managers.containsKey(applicationName))
+		{
+			throw new IllegalStateException("Manager for application with key '" + applicationName +
+				"' already exists.");
+		}
 		managers.put(applicationName, this);
 	}
 
@@ -244,6 +249,11 @@
 	{
 		private static final String ATTRIBUTE_NAME = "wicket:persistentPageManagerData";
 
+		private String getAttributeName()
+		{
+			return ATTRIBUTE_NAME + " - " + applicationName;
+		}
+
 		/**
 		 * Construct.
 		 * 
@@ -280,7 +290,7 @@
 		 */
 		private SessionEntry getSessionEntry(boolean create)
 		{
-			SessionEntry entry = (SessionEntry)getSessionAttribute(ATTRIBUTE_NAME);
+			SessionEntry entry = (SessionEntry)getSessionAttribute(getAttributeName());
 			if (entry == null && create)
 			{
 				bind();
@@ -290,8 +300,8 @@
 			{
 				synchronized (entry)
 				{
-					setSessionAttribute(ATTRIBUTE_NAME, null);
-					setSessionAttribute(ATTRIBUTE_NAME, entry);
+					setSessionAttribute(getAttributeName(), null);
+					setSessionAttribute(getAttributeName(), entry);
 				}
 			}
 			return entry;