Author: tdraier
Date: Mon Jun 25 14:57:46 2007
New Revision: 17745

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D17745&repname=
=3Djahia
Log:
correctly save structure changes (JAHIA-1438) ( backport 17397 )

Modified:
    trunk/core/src/java/org/jahia/hibernate/dao/JahiaContainerDefinitionDAO=
.java

Modified: trunk/core/src/java/org/jahia/hibernate/dao/JahiaContainerDefinit=
ionDAO.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/hibernate/dao/JahiaContainerDefinitionDAO.java&rev=3D17745&repname=
=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/core/src/java/org/jahia/hibernate/dao/JahiaContainerDefinitionDAO=
.java (original)
+++ trunk/core/src/java/org/jahia/hibernate/dao/JahiaContainerDefinitionDAO=
.java Mon Jun 25 14:57:46 2007
@@ -126,6 +126,7 @@
                 template.save(property);
             }
         }
+        saveSubDefinition(ctnDef, template);
         template.merge(ctnDef);
         template.flush();
         template.clear();
@@ -166,16 +167,20 @@
                 while (iterator.hasNext()) {
                     JahiaCtnDefProperty property =3D (JahiaCtnDefProperty)=
 iterator.next();
                     Set set =3D property.getJahiaCtnStructs();
-                    // template.save(property);
+                    Collection oldDef =3D template.find("from JahiaCtnStru=
ct where comp_id.ctnsubdefid.idJahiaCtnDefProperties=3D?",property.getIdJah=
iaCtnDefProperties());
                     if (set !=3D null) {
                         Iterator iterator2 =3D set.iterator();
                         while (iterator2.hasNext()) {
                             JahiaCtnStruct struct =3D (JahiaCtnStruct) ite=
rator2.next();
                             struct.getComp_id().setCtnsubdefid(property);
+                            oldDef.remove(struct);
                             template.save(struct);
                         }
+                        for (Iterator iterator1 =3D oldDef.iterator(); ite=
rator1.hasNext();) {
+                            JahiaCtnStruct jahiaCtnStruct =3D (JahiaCtnStr=
uct) iterator1.next();
+                            template.delete(jahiaCtnStruct);
+                        }
                     }
-//                    template.save(property);
                 }
             }
         }

_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list

Reply via email to