You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by al...@apache.org on 2007/06/18 12:46:07 UTC
svn commit: r548298 -
/incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/settings/Settings.java
Author: almaw
Date: Mon Jun 18 03:46:02 2007
New Revision: 548298
URL: http://svn.apache.org/viewvc?view=rev&rev=548298
Log:
WICKET-625 - Wicket doesn't clean up properly when hot-deploying; hangs onto Class references. (partial fix, work in progress)
Modified:
incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/settings/Settings.java
Modified: incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/settings/Settings.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/settings/Settings.java?view=diff&rev=548298&r1=548297&r2=548298
==============================================================================
--- incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/settings/Settings.java (original)
+++ incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/settings/Settings.java Mon Jun 18 03:46:02 2007
@@ -16,6 +16,7 @@
*/
package org.apache.wicket.settings;
+import java.lang.ref.WeakReference;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
@@ -90,7 +91,7 @@
IRequestLoggerSettings
{
/** Class of access denied page. */
- private Class accessDeniedPage;
+ private WeakReference/*<Class<? extends Page>*/ accessDeniedPage;
/** ajax debug mode status */
private boolean ajaxDebugModeEnabled = false;
@@ -163,7 +164,7 @@
private boolean gatherExtendedBrowserInfo = false;
/** Class of internal error page. */
- private Class internalErrorPage;
+ private WeakReference/*<Class<? extends Page>*/ internalErrorPage;
/** I18N support */
private Localizer localizer;
@@ -187,7 +188,7 @@
private IPackageResourceGuard packageResourceGuard = new PackageResourceGuard();
/** The error page displayed when an expired page is accessed. */
- private Class pageExpiredErrorPage;
+ private WeakReference/*<Class<? extends Page>*/ pageExpiredErrorPage;
/** factory to create new Page objects */
private IPageFactory pageFactory = new DefaultPageFactory();
@@ -378,7 +379,7 @@
*/
public Class getAccessDeniedPage()
{
- return accessDeniedPage;
+ return (Class)accessDeniedPage.get();
}
/**
@@ -521,7 +522,7 @@
*/
public Class getInternalErrorPage()
{
- return internalErrorPage;
+ return (Class)internalErrorPage.get();
}
/**
@@ -569,7 +570,7 @@
*/
public Class getPageExpiredErrorPage()
{
- return pageExpiredErrorPage;
+ return (Class)pageExpiredErrorPage.get();
}
/**
@@ -799,7 +800,7 @@
}
checkPageClass(accessDeniedPage);
- this.accessDeniedPage = accessDeniedPage;
+ this.accessDeniedPage = new WeakReference(accessDeniedPage);
}
/**
@@ -950,7 +951,7 @@
}
checkPageClass(internalErrorPage);
- this.internalErrorPage = internalErrorPage;
+ this.internalErrorPage = new WeakReference(internalErrorPage);
}
/**
@@ -997,7 +998,7 @@
}
checkPageClass(pageExpiredErrorPage);
- this.pageExpiredErrorPage = pageExpiredErrorPage;
+ this.pageExpiredErrorPage = new WeakReference(pageExpiredErrorPage);
}
/**