Connection conn = tx.getConnection(oid.getMolder().getLockEngine());
_persistence.store(conn, oid.getIdentity(), newentity, oldentity);
ClassMolder molder = this;
ClassMolder extendedMolder = molder._extends;
while (extendedMolder != null) {
ClassDescriptor extendedDescriptor = extendedMolder.getClassDescriptor();
ClassDescriptor descriptor = molder.getClassDescriptor();
if (!new ClassDescriptorJDONature(extendedDescriptor).getTableName().equals(
new ClassDescriptorJDONature(descriptor).getTableName())) {
extendedMolder._persistence.store(conn, oid.getIdentity(), newentity, oldentity);
}
molder = extendedMolder;
extendedMolder = extendedMolder._extends;
}
The comment is for reviewing the logic. The following code is moved from SQLengine to ClassMolder. As you can see, in SQLEngine this code was implemented in a way that it stores the records recursively.
New code which I written in ClassMolder is different. We cannot use the recursive mechanism in ClassMolder because it is at different layer. The new code looks like
Comments?
Best Regards, Ahmad