From 865ad5b0662d4fe15cd596e3be3a91f3ebb8aa79 Mon Sep 17 00:00:00 2001
From: jakubs <jakubs>
Date: Tue, 6 Mar 2012 14:08:14 +0000
Subject: [PATCH] LMS-2820: small refactoring

SVN: 24627
---
 .../DataSetRegistrationService.java           | 27 +++++++++++--------
 1 file changed, 16 insertions(+), 11 deletions(-)

diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/DataSetRegistrationService.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/DataSetRegistrationService.java
index 6c3aa64f5fb..09b1336ce83 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/DataSetRegistrationService.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/DataSetRegistrationService.java
@@ -68,7 +68,7 @@ public class DataSetRegistrationService<T extends DataSetInformation> implements
 
     private final DataSetFile incomingDataSetFile;
 
-    private final DssRegistrationLogger dssRegistrationLog;
+    protected final DssRegistrationLogger dssRegistrationLog;
 
     private final DssRegistrationLogDirectoryHelper dssRegistrationLogHelper;
 
@@ -85,7 +85,7 @@ public class DataSetRegistrationService<T extends DataSetInformation> implements
     /**
      * All transactions ever created on this service.
      */
-    private final ArrayList<DataSetRegistrationTransaction<T>> transactions;
+    protected final ArrayList<DataSetRegistrationTransaction<T>> transactions;
 
     /**
      * Create a new DataSetRegistrationService.
@@ -185,9 +185,18 @@ public class DataSetRegistrationService<T extends DataSetInformation> implements
             }
         }
 
-        // If some transactions were rolledback, then the service did not succeeed
-        boolean serviceDidSucceed = false == someTransactionsWereRolledback;
+        logDssRegistrationResult();
 
+        // Execute the clean afterwards action as successful only if no errors occurred and we
+        // registered data sets
+        executeGlobalCleanAfterwardsAction(false == (didErrorsArise() || someTransactionsWereRolledback));
+    }
+
+    /**
+     * Write to the dssRegistrationLog either success or the failure with error details. 
+     */
+    protected void logDssRegistrationResult()
+    {
         if (0 == encounteredErrors.size())
         {
             dssRegistrationLog.registerSuccess();
@@ -204,10 +213,6 @@ public class DataSetRegistrationService<T extends DataSetInformation> implements
             dssRegistrationLog.log(logMessage.toString());
             dssRegistrationLog.registerFailure();
         }
-
-        // Execute the clean afterwards action as successful only if no errors occurred and we
-        // registered data sets
-        executeGlobalCleanAfterwardsAction(0 == encounteredErrors.size() && serviceDidSucceed);
     }
 
     /**
@@ -229,8 +234,8 @@ public class DataSetRegistrationService<T extends DataSetInformation> implements
     {
         executeGlobalCleanAfterwardsAction(false);
     }
-
-    private void executeGlobalCleanAfterwardsAction(boolean success)
+    
+    protected void executeGlobalCleanAfterwardsAction(boolean success)
     {
         if (false == cleanActionExecuted)
         {
@@ -383,7 +388,7 @@ public class DataSetRegistrationService<T extends DataSetInformation> implements
     {
         return dataSetRegistrationDetailsFactory;
     }
-
+    
     /**
      * If a transaction is hanging around, commit it
      */
-- 
GitLab