From a2d5e24e8a211a3c7759da08be2c6d12f9eb912e Mon Sep 17 00:00:00 2001
From: jakubs <jakubs>
Date: Thu, 14 Jun 2012 13:47:10 +0000
Subject: [PATCH] BIS-21 SP-107 add watermark checking for recovery state
 directory

SVN: 25709
---
 .../java/ch/systemsx/cisd/etlserver/ETLDaemon.java    | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/ETLDaemon.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/ETLDaemon.java
index bb428d3778e..1e265028066 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/ETLDaemon.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/ETLDaemon.java
@@ -250,7 +250,7 @@ public final class ETLDaemon
                     + incomingDataDirectory + "' will be stored in share "
                     + topLevelRegistrator.getGlobalState().getShareId() + ".");
         }
-
+        
         File storeRootDir = DssPropertyParametersUtil.getStoreRootDir(parameters.getProperties());
         initializeIncomingShares(threads, storeRootDir);
 
@@ -320,13 +320,15 @@ public final class ETLDaemon
             final boolean notifySuccessfulRegistration)
     {
         final File incomingDataDirectory = threadParameters.getIncomingDataDirectory();
+        final File recoveryStateDirectory = DssPropertyParametersUtil.getDssRecoveryStateDir(parameters.getProperties());
+        
         final ITopLevelDataSetRegistrator pathHandler =
                 createTopLevelDataSetRegistrator(parameters.getProperties(), threadParameters,
                         authorizedLimsService, mailClient, dataSetValidator,
                         dataSourceQueryService, notifySuccessfulRegistration);
         final HighwaterMarkDirectoryScanningHandler directoryScanningHandler =
                 createDirectoryScanningHandler(pathHandler, highwaterMarkWatcher,
-                        incomingDataDirectory, threadParameters.reprocessFaultyDatasets(),
+                        incomingDataDirectory, recoveryStateDirectory,  threadParameters.reprocessFaultyDatasets(),
                         pathHandler);
         FileFilter fileFilter =
                 createFileFilter(incomingDataDirectory, threadParameters.useIsFinishedMarkerFile(),
@@ -555,14 +557,15 @@ public final class ETLDaemon
 
     private final static HighwaterMarkDirectoryScanningHandler createDirectoryScanningHandler(
             final IStopSignaler stopSignaler, final HighwaterMarkWatcher highwaterMarkWatcher,
-            final File incomingDataDirectory, boolean reprocessFaultyDatasets,
+            final File incomingDataDirectory, final File recoveryStateDirectory,
+            boolean reprocessFaultyDatasets,
             IFaultyPathDirectoryScanningHandlerDelegate faultyPathHandlerDelegate)
     {
         final IDirectoryScanningHandler faultyPathHandler =
                 createFaultyPathHandler(stopSignaler, incomingDataDirectory,
                         reprocessFaultyDatasets, faultyPathHandlerDelegate);
         return new HighwaterMarkDirectoryScanningHandler(faultyPathHandler, highwaterMarkWatcher,
-                incomingDataDirectory);
+                incomingDataDirectory, recoveryStateDirectory);
     }
 
     private static IDirectoryScanningHandler createFaultyPathHandler(
-- 
GitLab