diff --git a/datamover/source/java/ch/systemsx/cisd/datamover/CopyActivityMonitor.java b/datamover/source/java/ch/systemsx/cisd/datamover/CopyActivityMonitor.java index 69d1b32015d71a8359ddbe67ac5050dad644904c..6a729a8d6236645fadf50db3ff67998c9f9b0cdd 100644 --- a/datamover/source/java/ch/systemsx/cisd/datamover/CopyActivityMonitor.java +++ b/datamover/source/java/ch/systemsx/cisd/datamover/CopyActivityMonitor.java @@ -92,12 +92,12 @@ public class CopyActivityMonitor * Creates a monitor. * * @param destinationDirectory The directory to monitor for write access. - * @param operations The provider to get the {@link IPathLastChangedChecker} from. + * @param factory The provider to get the {@link IPathLastChangedChecker} from. * @param copyProcess The {@link ITerminable} representing the copy process. This will get terminated if the copy * process gets stuck. * @param timingParameters The {@link ITimingParameters} to get the check interval and the inactivity period from. */ - public CopyActivityMonitor(File destinationDirectory, IFileSysOperationsFactory operations, ITerminable copyProcess, + public CopyActivityMonitor(File destinationDirectory, IFileSysOperationsFactory factory, ITerminable copyProcess, ITimingParameters timingParameters) { this.monitoredPathLastChecked = new AtomicLong(0); @@ -105,12 +105,12 @@ public class CopyActivityMonitor this.pathToBeCopied = new AtomicReference<File>(null); assert destinationDirectory != null; - assert operations != null; + assert factory != null; assert copyProcess != null; assert timingParameters != null; this.destinationDirectory = destinationDirectory; - this.checker = operations.getChecker(); + this.checker = factory.getChecker(); this.checkIntervallMillis = timingParameters.getCheckIntervalMillis(); assert this.checker != null; diff --git a/datamover/source/java/ch/systemsx/cisd/datamover/IPathImmutableCopier.java b/datamover/source/java/ch/systemsx/cisd/datamover/IPathImmutableCopier.java index 5d73f56c396ca4ad10de933ca572537925101c50..afc0ff03c69efd8cc3097c70d4905ba65185277a 100644 --- a/datamover/source/java/ch/systemsx/cisd/datamover/IPathImmutableCopier.java +++ b/datamover/source/java/ch/systemsx/cisd/datamover/IPathImmutableCopier.java @@ -29,7 +29,7 @@ public interface IPathImmutableCopier * Creates copy of <code>file</code> in <code>destinationDirectory</code> which should not be modified. Can use * hard links if it is possible. * - * @return pointer to the created file or null if operation failed + * @return pointer to the created file or <code>null</code> if operation failed */ File tryCopy(File file, File destinationDirectory); } diff --git a/datamover/source/java/ch/systemsx/cisd/datamover/Main.java b/datamover/source/java/ch/systemsx/cisd/datamover/Main.java index ee3af1b46bb9f9042a19fcf81875befebd91accd..355f89a07c067d48adeba9f64bbfa1feb81af191 100644 --- a/datamover/source/java/ch/systemsx/cisd/datamover/Main.java +++ b/datamover/source/java/ch/systemsx/cisd/datamover/Main.java @@ -80,7 +80,7 @@ public class Main } IPathImmutableCopier copier = null; - if (!OSUtilities.isWindows()) + if (OSUtilities.isWindows() == false) { copier = RecursiveHardLinkMaker.tryCreate(); if (copier != null) @@ -218,7 +218,7 @@ public class Main private static void startupServer(final Parameters parameters) { selfTest(parameters); - final IFileSysOperationsFactory operations = new IFileSysOperationsFactory() + final IFileSysOperationsFactory factory = new IFileSysOperationsFactory() { public IPathLastChangedChecker getChecker() { @@ -241,7 +241,7 @@ public class Main } }; - final MonitorStarter starter = new MonitorStarter(parameters, operations); + final MonitorStarter starter = new MonitorStarter(parameters, factory); starter.start(); } diff --git a/datamover/source/java/ch/systemsx/cisd/datamover/MonitorStarter.java b/datamover/source/java/ch/systemsx/cisd/datamover/MonitorStarter.java index d40f26d4486ad5bde41f94121919f3e620356f83..fcedd2b7b063ef16d264404efd5e42ac91b0ee46 100644 --- a/datamover/source/java/ch/systemsx/cisd/datamover/MonitorStarter.java +++ b/datamover/source/java/ch/systemsx/cisd/datamover/MonitorStarter.java @@ -45,7 +45,7 @@ public class MonitorStarter private final Parameters parameters; - private final IFileSysOperationsFactory operations; + private final IFileSysOperationsFactory factory; private final File inProgressDir; // here data are copied from incoming @@ -53,10 +53,10 @@ public class MonitorStarter private final File tempDir;// auxiliary directory used if we need to make a copy of incoming data - public MonitorStarter(Parameters parameters, IFileSysOperationsFactory operations) + public MonitorStarter(Parameters parameters, IFileSysOperationsFactory factory) { this.parameters = parameters; - this.operations = operations; + this.factory = factory; File buffer = parameters.getBufferStore().getPath(); this.inProgressDir = ensureDirectoryExists(buffer, LOCAL_IN_PROGRESS_DIR); this.readyToMoveDir = ensureDirectoryExists(buffer, LOCAL_READY_TO_MOVE_DIR); @@ -88,7 +88,7 @@ public class MonitorStarter final DirectoryScanningTimerTask movingTask = new DirectoryScanningTimerTask(incomingStore.getPath(), new QuietPeriodFileFilter(parameters, - operations), pathHandler); + factory), pathHandler); final Timer movingTimer = new Timer("Mover of Incomming Data"); schedule(movingTimer, movingTask, 0, parameters.getCheckIntervalMillis(), parameters.getTreatIncomingAsRemote()); } @@ -98,7 +98,7 @@ public class MonitorStarter { IPathHandler moveFromIncoming = createPathMoverToLocal(sourceHost, inProgressDir); IPathHandler processMoved = - createProcessMovedFile(readyToMoveDir, tempDir, parameters.tryGetExtraCopyStore(), operations); + createProcessMovedFile(readyToMoveDir, tempDir, parameters.tryGetExtraCopyStore(), factory); IPathHandler moveAndProcess = createMoveAndProcess(moveFromIncoming, inProgressDir, processMoved); IPathHandler manualInterventionMover = createPathMoverToLocal(sourceHost, manualInterventionDir); CleansingPathHandlerDecorator cleansingOrMover = @@ -107,14 +107,14 @@ public class MonitorStarter } private static IPathHandler createProcessMovedFile(File destDirectory, File tempDir, - FileStore extraCopyStoreOrNull, IFileSysOperationsFactory operations) + FileStore extraCopyStoreOrNull, IFileSysOperationsFactory factory) { FileFilter cleanMarkers = new NamePrefixFileFilter(Constants.IS_FINISHED_PREFIX, true); IPathHandler moveToDone = new IntraFSPathMover(destDirectory); IPathHandler processHandler; if (extraCopyStoreOrNull != null) { - IPathImmutableCopier copier = operations.getImmutableCopier(); + IPathImmutableCopier copier = factory.getImmutableCopier(); IPathHandler extraCopyHandler = createExtraCopyHandler(tempDir, extraCopyStoreOrNull.getPath(), copier); processHandler = combineHandlers(extraCopyHandler, moveToDone); } else @@ -151,7 +151,9 @@ public class MonitorStarter { File copiedFile = copier.tryCopy(path, tempDir); if (copiedFile == null) + { return false; + } return moveToFinal.handle(copiedFile); } }; @@ -193,9 +195,9 @@ public class MonitorStarter private IPathHandler createRemotePathMover(String sourceHost, File destinationDirectory, String destinationHost) { - IPathCopier copier = operations.getCopier(destinationDirectory); - CopyActivityMonitor monitor = new CopyActivityMonitor(destinationDirectory, operations, copier, parameters); - IPathRemover remover = operations.getRemover(); + IPathCopier copier = factory.getCopier(destinationDirectory); + CopyActivityMonitor monitor = new CopyActivityMonitor(destinationDirectory, factory, copier, parameters); + IPathRemover remover = factory.getRemover(); return new RemotePathMover(destinationDirectory, destinationHost, monitor, remover, copier, sourceHost, parameters); } @@ -236,9 +238,9 @@ public class MonitorStarter private static File ensureDirectoryExists(File dir, String newDirName) { File dataDir = new File(dir, newDirName); - if (!dataDir.exists()) + if (dataDir.exists() == false) { - if (!dataDir.mkdir()) + if (dataDir.mkdir() == false) throw new EnvironmentFailureException("Could not create local data directory " + dataDir); } return dataDir; diff --git a/datamover/source/java/ch/systemsx/cisd/datamover/QuietPeriodFileFilter.java b/datamover/source/java/ch/systemsx/cisd/datamover/QuietPeriodFileFilter.java index 86e82b58c8ab93604d4c5bda681d410f0e592d30..60b43f805573bdf0441e81d9256d6eefe9f8cdd6 100644 --- a/datamover/source/java/ch/systemsx/cisd/datamover/QuietPeriodFileFilter.java +++ b/datamover/source/java/ch/systemsx/cisd/datamover/QuietPeriodFileFilter.java @@ -35,16 +35,16 @@ public class QuietPeriodFileFilter implements FileFilter * Creates a <var>QuietPeriodFileFilter</var>. * * @param timingParameters The timing paramter object to get the quiet period from. - * @param operations The operations object to ask for the implementation to use to check when a pathname was + * @param factory The factory object to create implementation to use to check when a pathname was * changed. */ - public QuietPeriodFileFilter(ITimingParameters timingParameters, IFileSysOperationsFactory operations) + public QuietPeriodFileFilter(ITimingParameters timingParameters, IFileSysOperationsFactory factory) { assert timingParameters != null; - assert operations != null; + assert factory != null; quietPeriodMillis = timingParameters.getQuietPeriodMillis(); - checker = operations.getChecker(); + checker = factory.getChecker(); assert quietPeriodMillis > 0; assert checker != null; diff --git a/datamover/source/java/ch/systemsx/cisd/datamover/hardlink/RecursiveHardLinkMaker.java b/datamover/source/java/ch/systemsx/cisd/datamover/hardlink/RecursiveHardLinkMaker.java index 576b0f71769f198f9fd98f4e184c62a3b8f7ebd9..a58255acb569129f2af0602fb667ab0d7cfa201b 100644 --- a/datamover/source/java/ch/systemsx/cisd/datamover/hardlink/RecursiveHardLinkMaker.java +++ b/datamover/source/java/ch/systemsx/cisd/datamover/hardlink/RecursiveHardLinkMaker.java @@ -59,7 +59,9 @@ public class RecursiveHardLinkMaker implements IPathImmutableCopier { File lnExec = OSUtilities.findExecutable(HARD_LINK_EXEC); if (lnExec == null) + { return null; + } return new RecursiveHardLinkMaker(lnExec.getAbsolutePath()); } @@ -75,7 +77,7 @@ public class RecursiveHardLinkMaker implements IPathImmutableCopier operationLog.info(String.format("Creating a hard link copy of '%s' in '%s'.", resource.getPath(), destinationDirectory.getPath())); String resourceParent = resource.getParentFile().getAbsolutePath(); - assert !resourceParent.equals(destinationDirectory.getAbsolutePath()); + assert resourceParent.equals(destinationDirectory.getAbsolutePath()) == false; return tryMakeCopy(resource, destinationDirectory); } @@ -88,11 +90,15 @@ public class RecursiveHardLinkMaker implements IPathImmutableCopier { File dir = tryCreateDir(resource.getName(), destinationDirectory); if (dir == null) + { return null; + } for (File file : resource.listFiles()) { if (tryMakeCopy(file, dir) == null) + { return null; + } } return dir; } @@ -102,7 +108,7 @@ public class RecursiveHardLinkMaker implements IPathImmutableCopier { File dir = new File(destDir, name); boolean ok = dir.mkdir(); - if (!ok) + if (ok == false) { if (dir.isDirectory()) { diff --git a/datamover/sourceTest/java/ch/systemsx/cisd/datamover/CopyActivityMonitorTest.java b/datamover/sourceTest/java/ch/systemsx/cisd/datamover/CopyActivityMonitorTest.java index 239ac249c2844eac149cf60c8585056268d339b4..9e7e52755c62f996f63e39f36a72873fda6324fb 100644 --- a/datamover/sourceTest/java/ch/systemsx/cisd/datamover/CopyActivityMonitorTest.java +++ b/datamover/sourceTest/java/ch/systemsx/cisd/datamover/CopyActivityMonitorTest.java @@ -78,14 +78,14 @@ public class CopyActivityMonitorTest } } - private final class MyFileSystemOperations implements IFileSysOperationsFactory + private final class MyFileSystemFactory implements IFileSysOperationsFactory { /** * */ private final IPathLastChangedChecker checker; - private MyFileSystemOperations(IPathLastChangedChecker checker) + private MyFileSystemFactory(IPathLastChangedChecker checker) { this.checker = checker; } @@ -192,11 +192,11 @@ public class CopyActivityMonitorTest public void testHappyPath() throws Throwable { final IPathLastChangedChecker checker = new HappyPathLastChangedChecker(); - final IFileSysOperationsFactory operations = new MyFileSystemOperations(checker); + final IFileSysOperationsFactory factory = new MyFileSystemFactory(checker); final ITerminable dummyTerminable = new DummyTerminable(); final ITimingParameters parameters = new MyTimingParameters(0); final CopyActivityMonitor monitor = - new CopyActivityMonitor(workingDirectory, operations, dummyTerminable, parameters); + new CopyActivityMonitor(workingDirectory, factory, dummyTerminable, parameters); final File directory = new File(workingDirectory, "some-directory"); directory.mkdir(); directory.deleteOnExit(); @@ -210,11 +210,11 @@ public class CopyActivityMonitorTest public void testCopyStalled() throws Throwable { final IPathLastChangedChecker checker = new PathLastChangedCheckerStalled(); - final IFileSysOperationsFactory operations = new MyFileSystemOperations(checker); + final IFileSysOperationsFactory factory = new MyFileSystemFactory(checker); final MockTerminable copyProcess = new MockTerminable(); final ITimingParameters parameters = new MyTimingParameters(0); final CopyActivityMonitor monitor = - new CopyActivityMonitor(workingDirectory, operations, copyProcess, parameters); + new CopyActivityMonitor(workingDirectory, factory, copyProcess, parameters); final File file = new File(workingDirectory, "some-directory"); file.mkdir(); monitor.start(file); @@ -256,11 +256,11 @@ public class CopyActivityMonitorTest public void testCopySeemsStalledButActuallyIsFine() throws Throwable { final IPathLastChangedChecker checker = new SimulateShortInterruptionChangedChecker(); - final IFileSysOperationsFactory operations = new MyFileSystemOperations(checker); + final IFileSysOperationsFactory factory = new MyFileSystemFactory(checker); final MockTerminable copyProcess = new MockTerminable(); final ITimingParameters parameters = new MyTimingParameters(0); final CopyActivityMonitor monitor = - new CopyActivityMonitor(workingDirectory, operations, copyProcess, parameters); + new CopyActivityMonitor(workingDirectory, factory, copyProcess, parameters); final File file = new File(workingDirectory, "some-directory"); file.mkdir(); monitor.start(file); @@ -285,11 +285,11 @@ public class CopyActivityMonitorTest LogMonitoringAppender.addAppender(LogCategory.OPERATION, "Activity monitor got terminated"); LogFactory.getLogger(LogCategory.OPERATION, CopyActivityMonitor.class).addAppender(appender); final PathLastChangedCheckerStuck checker = new PathLastChangedCheckerStuck(); - final IFileSysOperationsFactory operations = new MyFileSystemOperations(checker); + final IFileSysOperationsFactory factory = new MyFileSystemFactory(checker); final MockTerminable copyProcess = new MockTerminable(); final ITimingParameters parameters = new MyTimingParameters(0); final CopyActivityMonitor monitor = - new CopyActivityMonitor(workingDirectory, operations, copyProcess, parameters); + new CopyActivityMonitor(workingDirectory, factory, copyProcess, parameters); final File directory = new File(workingDirectory, "some-directory"); directory.mkdir(); directory.deleteOnExit();