Author: tdraier
Date: Thu Jul 19 14:30:29 2007
New Revision: 18039

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D18039&repname=
=3Djahia
Log:
improved definitions updates, avoid database synchronization issues

Modified:
    branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/dao/Jahi=
aFieldsDefinitionDAO.java

Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/da=
o/JahiaFieldsDefinitionDAO.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/hibernate/dao/JahiaFieldsDefinitionDAO.java=
&rev=3D18039&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
--- branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/dao/Jahi=
aFieldsDefinitionDAO.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/dao/Jahi=
aFieldsDefinitionDAO.java Thu Jul 19 14:30:29 2007
@@ -81,21 +81,22 @@
     }
 =

     private void saveProperties(JahiaFieldsDef ctnDef, final HibernateTemp=
late template) {
-        int size =3D ctnDef.getProperties().size();
+        Map properties =3D ctnDef.getProperties();
+        int size =3D properties.size();
         if (size > 0) {
             template.flush();
             template.clear();
             List list =3D template.find("from JahiaFieldsDefExtprop where =
comp_id.jahiaFieldsDef=3D?", ctnDef.getId());
-            template.deleteAll(list);
-            template.flush();
-            template.clear();
-            Iterator iterator =3D ctnDef.getProperties().entrySet().iterat=
or();
+            Iterator iterator =3D properties.entrySet().iterator();
             while (iterator.hasNext()) {
                 Map.Entry entry =3D (Map.Entry) iterator.next();
-                template.merge(new JahiaFieldsDefExtprop(new JahiaFieldsDe=
fExtpropPK(ctnDef.getId(),
-                                                                          =
           (String) entry.getKey()),
-                                                         (String) entry.ge=
tValue()));
+                JahiaFieldsDefExtprop fieldsDefExtprop =3D new JahiaFields=
DefExtprop(new JahiaFieldsDefExtpropPK(ctnDef.getId(),
+                        (String) entry.getKey()),
+                        (String) entry.getValue());
+                template.merge(fieldsDefExtprop);
+                list.remove(fieldsDefExtprop);
             }
+            template.deleteAll(list);
             template.flush();
         }
     }

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

Reply via email to