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:51:55 UTC
svn commit: r548306 -
/incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataKey.java
Author: almaw
Date: Mon Jun 18 03:51:53 2007
New Revision: 548306
URL: http://svn.apache.org/viewvc?view=rev&rev=548306
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/MetaDataKey.java
Modified: incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataKey.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataKey.java?view=diff&rev=548306&r1=548305&r2=548306
==============================================================================
--- incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataKey.java (original)
+++ incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/MetaDataKey.java Mon Jun 18 03:51:53 2007
@@ -18,6 +18,8 @@
import java.io.Serializable;
+import org.apache.wicket.util.lang.Classes;
+
/**
* A key to a piece of metadata associated with a Component at runtime. The key
* contains type information that can be used to check the type of any metadata
@@ -35,7 +37,7 @@
private static final long serialVersionUID = 1L;
/** Type of data associated with this key */
- private Class type;
+ private String typeName;
/**
* Constructor.
@@ -45,7 +47,7 @@
*/
public MetaDataKey(final Class type)
{
- this.type = type;
+ this.typeName = type.getName();
}
/**
@@ -152,10 +154,11 @@
*/
void checkType(final Object object)
{
- if (object != null && !type.isAssignableFrom(object.getClass()))
+ Class clazz = Classes.resolveClass(typeName);
+ if (object != null && !clazz.isAssignableFrom(object.getClass()) )
{
throw new IllegalArgumentException("MetaDataKey " + getClass()
- + " requires argument of " + type + ", not " + object.getClass());
+ + " requires argument of " + clazz + ", not " + object.getClass());
}
}
@@ -164,6 +167,6 @@
*/
public String toString()
{
- return getClass() + "[type=" + type + "]";
+ return getClass() + "[type=" + typeName + "]";
}
}