@Override public void execute() { Assert.notNull(mavenProperties); Assert.notNull(propertyNames); Assert.notNull(newFilesBaseDir); Assert.notNull(originalFilesBaseDir); Assert.notNull(filePattern); logger.info("Starting File List Comparison"); logger.info("Original files dir: " + originalFilesBaseDir); logger.info("New files dir: " + LocationUtils.getCanonicalPath(new File(newFilesBaseDir))); logger.info("File pattern: " + filePattern); logger.info("Property names: " + propertyNames); List<String> filePatterns = CollectionUtils.getTrimmedListFromCSV(filePattern); String[] includesArray = filePatterns.toArray(new String[filePatterns.size()]); SimpleScanner scanner = new SimpleScanner(); scanner.setBasedir(newFilesBaseDir); scanner.setIncludes(includesArray); List<String> newLocations = LocationUtils.getAbsolutePaths(scanner.getFiles()); List<String> newFileNames = LocationUtils.getFilenames(newLocations); scanner = new SimpleScanner(); scanner.setBasedir(originalFilesBaseDir); scanner.setIncludes(includesArray); List<String> originalLocations = LocationUtils.getAbsolutePaths(scanner.getFiles()); List<String> originalFileNames = LocationUtils.getFilenames(originalLocations); ComparisonResults comparison = LocationUtils.getLocationListComparison(newFileNames, originalFileNames); logger.info("Added {} files.", comparison.getAdded().size()); logger.info("Updated {} existing files.", comparison.getSame().size()); logger.info("Deleted {} files.", comparison.getDeleted().size()); PropertyUtils.addListComparisonProperties(mavenProperties, comparison, propertyNames); }