From 3a4e1aa43e4bc089eb1a91eb43211e60ab832be6 Mon Sep 17 00:00:00 2001
From: tjc <tjc@ee4ac58c-ac51-4696-9907-e4b3aa274f04>
Date: Thu, 24 Sep 2009 15:43:24 +0000
Subject: [PATCH] fix to updating timestamps

git-svn-id: svn+ssh://svn.internal.sanger.ac.uk/repos/svn/pathsoft/artemis/trunk@11903 ee4ac58c-ac51-4696-9907-e4b3aa274f04
---
 .../sanger/artemis/util/DatabaseDocument.java | 29 ++++++++++++++-----
 1 file changed, 21 insertions(+), 8 deletions(-)

diff --git a/uk/ac/sanger/artemis/util/DatabaseDocument.java b/uk/ac/sanger/artemis/util/DatabaseDocument.java
index 73339dcdf..aad59f035 100644
--- a/uk/ac/sanger/artemis/util/DatabaseDocument.java
+++ b/uk/ac/sanger/artemis/util/DatabaseDocument.java
@@ -2743,21 +2743,34 @@ public class DatabaseDocument extends Document
       //
       // update timelastmodified timestamp
       names_checked = new Vector();
+      
+      
+      //
+      // add all the UPDATE Feature transactions to the names_checked list
+      // these time stamps should already have been updated
       for(int i = 0; i < sql.size(); i++)
       {
         final ChadoTransaction tsn = (ChadoTransaction) sql.get(i);
-        final Object uniquenames[] = getUniqueNames(tsn);
-             
-        if(uniquenames == null)
-          continue;
-        
         if(tsn.getType() == ChadoTransaction.UPDATE &&
            tsn.getFeatureObject() instanceof Feature)
         {
+          final Object uniquenames[] = getUniqueNames(tsn);
+          if(uniquenames == null)
+            continue;
+          
           for(int j=0; j<uniquenames.length; j++)
-            names_checked.add((String) uniquenames[j]);
-          continue;  
+            names_checked.add((String) uniquenames[j]); 
         }
+      }
+      
+      
+      for(int i = 0; i < sql.size(); i++)
+      {
+        final ChadoTransaction tsn = (ChadoTransaction) sql.get(i);
+        final Object uniquenames[] = getUniqueNames(tsn);
+             
+        if(uniquenames == null)
+          continue;
         
         for(int j=0; j<uniquenames.length; j++)
         {
@@ -2769,7 +2782,7 @@ public class DatabaseDocument extends Document
 
           final Feature feature;
 
-          // retieve from featureId store
+          // retrieve from featureId store
           if(featureIdStore != null && featureIdStore.containsKey(uniquename))
           {
             Feature f = (Feature) featureIdStore.get(uniquename);
-- 
GitLab