From a588a145263e28a73f3a98bd260f41643bfa0311 Mon Sep 17 00:00:00 2001
From: ribeaudc <ribeaudc>
Date: Thu, 15 May 2008 07:00:48 +0000
Subject: [PATCH] fix: - 'pathHandlerInterceptor' not registered as
 'ChangeListener'.

SVN: 6057
---
 .../source/java/ch/systemsx/cisd/datamover/DataMover.java   | 6 +++++-
 .../java/ch/systemsx/cisd/datamover/LocalProcessor.java     | 5 +++--
 2 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/datamover/source/java/ch/systemsx/cisd/datamover/DataMover.java b/datamover/source/java/ch/systemsx/cisd/datamover/DataMover.java
index bcf6b5b99a3..a8daa22f446 100644
--- a/datamover/source/java/ch/systemsx/cisd/datamover/DataMover.java
+++ b/datamover/source/java/ch/systemsx/cisd/datamover/DataMover.java
@@ -20,6 +20,7 @@ import java.io.File;
 import java.util.Timer;
 
 import ch.systemsx.cisd.common.Constants;
+import ch.systemsx.cisd.common.highwatermark.HighwaterMarkWatcher;
 import ch.systemsx.cisd.common.highwatermark.PathHandlerInterceptor;
 import ch.systemsx.cisd.common.utilities.DirectoryScanningTimerTask;
 import ch.systemsx.cisd.common.utilities.FileUtilities;
@@ -134,11 +135,14 @@ public class DataMover
 
     private DataMoverProcess createLocalProcessor()
     {
+        final HighwaterMarkWatcher highwaterMarkWatcher =
+                new HighwaterMarkWatcher(bufferDirs.getBufferDirHighwaterMark());
         final LocalProcessor localProcessor =
                 new LocalProcessor(parameters, bufferDirs, factory.getImmutableCopier(), factory
-                        .getMover());
+                        .getMover(), highwaterMarkWatcher);
         final PathHandlerInterceptor pathHandlerInterceptor =
                 new PathHandlerInterceptor(localProcessor);
+        highwaterMarkWatcher.addChangeListener(pathHandlerInterceptor);
         final DirectoryScanningTimerTask localProcessingTask =
                 new DirectoryScanningTimerTask(bufferDirs.getCopyCompleteDir(),
                         FileUtilities.ACCEPT_ALL_FILTER, pathHandlerInterceptor);
diff --git a/datamover/source/java/ch/systemsx/cisd/datamover/LocalProcessor.java b/datamover/source/java/ch/systemsx/cisd/datamover/LocalProcessor.java
index f3a3b61a9c4..c53071feee1 100644
--- a/datamover/source/java/ch/systemsx/cisd/datamover/LocalProcessor.java
+++ b/datamover/source/java/ch/systemsx/cisd/datamover/LocalProcessor.java
@@ -81,13 +81,14 @@ public class LocalProcessor implements IPathHandler, IRecoverableTimerTaskFactor
     private final HighwaterMarkWatcher highwaterMarkWatcher;
 
     LocalProcessor(final Parameters parameters, final LocalBufferDirs bufferDirs,
-            final IPathImmutableCopier copier, final IPathMover mover)
+            final IPathImmutableCopier copier, final IPathMover mover,
+            final HighwaterMarkWatcher highwaterMarkWatcher)
     {
         this.parameters = parameters;
         this.inputDir = bufferDirs.getCopyCompleteDir();
         this.outputDir = bufferDirs.getReadyToMoveDir();
         this.tempDir = bufferDirs.getTempDir();
-        highwaterMarkWatcher = new HighwaterMarkWatcher(bufferDirs.getBufferDirHighwaterMark());
+        this.highwaterMarkWatcher = highwaterMarkWatcher;
         this.extraCopyDirOrNull = parameters.tryGetExtraCopyDir();
         this.copier = copier;
         this.mover = mover;
-- 
GitLab