synchronized (getDataLock()) {
try {
KongaDataObject clone = (KongaDataObject) super.clone();
clone.dataLock = new Object();
if (propChangeManager != null) {
clone.propChangeManager = new PropertyChangeManager(clone);
}
clone.nameObject = new Name(nameObject);
return clone;
} catch (CloneNotSupportedException willNotHappen) {
throw new RuntimeException(willNotHappen);