Update of /var/cvs/src/org/mmbase/datatypes
In directory james.mmbase.org:/tmp/cvs-serv19637
Modified Files:
BasicDataType.java
Log Message:
make handlers re-writeable on 'rewrite' and clone
See also: http://cvs.mmbase.org/viewcvs/src/org/mmbase/datatypes
Index: BasicDataType.java
===================================================================
RCS file: /var/cvs/src/org/mmbase/datatypes/BasicDataType.java,v
retrieving revision 1.89
retrieving revision 1.90
diff -u -b -r1.89 -r1.90
--- BasicDataType.java 15 Jul 2008 19:41:00 -0000 1.89
+++ BasicDataType.java 15 Jul 2008 22:08:14 -0000 1.90
@@ -40,7 +40,7 @@
* @author Pierre van Rooden
* @author Michiel Meeuwissen
* @since MMBase-1.8
- * @version $Id: BasicDataType.java,v 1.89 2008/07/15 19:41:00 michiel Exp $
+ * @version $Id: BasicDataType.java,v 1.90 2008/07/15 22:08:14 michiel Exp $
*/
public class BasicDataType<C> extends AbstractDescriptor implements
DataType<C>, Cloneable, Comparable<DataType<C>>, Descriptor {
@@ -459,6 +459,7 @@
if (this.owner != owner) {
throw new IllegalArgumentException("Cannot rewrite this
datatype - specified owner is not correct");
}
+ handlers = new ConcurrentHashMap<String, Handler>(handlers);
this.owner = null;
}
return this;
@@ -592,7 +593,7 @@
try {
BasicDataType<C> clone = (BasicDataType<C>) super.clone(name);
// reset owner if it was set, so this datatype can be changed
- clone.owner = null;
+ clone.rewrite(clone.owner);
// properly inherit from this datatype (this also clones
properties and processor arrays)
clone.inheritProperties(this);
clone.cloneRestrictions(this);
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs