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 2007/04/04 02:06:41 UTC
svn commit: r525335 -
/incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket/src/main/java/wicket/util/lang/EnumeratedType.java
Author: knopp
Date: Tue Apr 3 17:06:41 2007
New Revision: 525335
URL: http://svn.apache.org/viewvc?view=rev&rev=525335
Log:
preserve identity after serialization
Modified:
incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket/src/main/java/wicket/util/lang/EnumeratedType.java
Modified: incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket/src/main/java/wicket/util/lang/EnumeratedType.java
URL: http://svn.apache.org/viewvc/incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket/src/main/java/wicket/util/lang/EnumeratedType.java?view=diff&rev=525335&r1=525334&r2=525335
==============================================================================
--- incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket/src/main/java/wicket/util/lang/EnumeratedType.java (original)
+++ incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket/src/main/java/wicket/util/lang/EnumeratedType.java Tue Apr 3 17:06:41 2007
@@ -18,6 +18,7 @@
import java.util.ArrayList;
import java.util.HashMap;
+import java.util.Iterator;
import java.util.List;
import java.util.Map;
@@ -73,5 +74,29 @@
}
return valueList;
+ }
+
+ /**
+ * Method to ensure that == works after deserialization
+ * @return object instance
+ * @throws java.io.ObjectStreamException
+ */
+ public Object readResolve() throws java.io.ObjectStreamException
+ {
+ EnumeratedType result = this;
+ List values = getValues(getClass());
+ if (values != null)
+ {
+ for (Iterator i = values.iterator(); i.hasNext(); )
+ {
+ EnumeratedType type = (EnumeratedType) i.next();
+ if (type.toString() != null && type.toString().equals(this.toString()))
+ {
+ result = type;
+ break;
+ }
+ }
+ }
+ return result;
}
}