Example usage for org.apache.commons.io FileUtils listFiles

List of usage examples for org.apache.commons.io FileUtils listFiles

Introduction

In this page you can find the example usage for org.apache.commons.io FileUtils listFiles.

Prototype

public static Collection listFiles(File directory, String[] extensions, boolean recursive) 

Source Link

Document

Finds files within a given directory (and optionally its subdirectories) which match an array of extensions.

Usage

From source file:edu.lternet.pasta.datapackagemanager.ArchiveCleaner.java

/**
 * Removes any archive file that is older than the specified time-to-live (ttl).
 * /*from ww w .j a v  a2  s . c o  m*/
 * @param ttl The time-to-live value in milliseconds.
 * @return    the number of archive files that were removed
 */
public int doClean(Long ttl) {
    File tmpDir = new File(this.tmpDir);
    String[] ext = { "zip" };
    Long time = new Date().getTime();
    Long lastModified = null;
    int deleteCount = 0;

    Collection<File> files = FileUtils.listFiles(tmpDir, ext, false);

    for (File file : files) {
        if (file != null && file.exists()) {
            lastModified = file.lastModified();
            // Remove file if older than the ttl
            if (lastModified + ttl <= time) {
                try {
                    FileUtils.forceDelete(file);
                    deleteCount++;
                } catch (IOException e) {
                    logger.error(e.getMessage());
                    e.printStackTrace();
                }
            }
        }
    }

    return deleteCount;
}

From source file:com.ning.metrics.collector.hadoop.processing.TestHadoopWriterFactory.java

private void testProcessLeftBelowFilesAllClean() throws Exception {
    final HadoopWriterFactory factory = new NoWriteHadoopWriterFactory(null, config);

    FileUtils.touch(new File(lockDirectory.getPath() + "/some_file_which_should_be_sent_1"));
    FileUtils.touch(new File(lockDirectory.getPath() + "/some_file_which_should_be_sent_2"));
    FileUtils.touch(new File(quarantineDirectory.getPath() + "/some_other_file_which_should_be_sent"));

    Assert.assertEquals(FileUtils
            .listFiles(spoolDirectory, FileFilterUtils.trueFileFilter(), FileFilterUtils.trueFileFilter())
            .size(), 3);//  ww  w  . j av a  2 s  . c o  m
    Assert.assertTrue(spoolDirectory.exists());
    Assert.assertTrue(tmpDirectory.exists());
    Assert.assertTrue(lockDirectory.exists());
    Assert.assertTrue(quarantineDirectory.exists());

    Thread.sleep(2 * CUTOFF_TIME);
    factory.processLeftBelowFiles();

    // All files should have been sent
    Assert.assertFalse(spoolDirectory.exists());
    Assert.assertFalse(tmpDirectory.exists());
    Assert.assertFalse(lockDirectory.exists());
    Assert.assertFalse(quarantineDirectory.exists());

    // We could even test the mapping in HDFS here (with the keys)
    Assert.assertEquals(hdfs.values().size(), 3);
}

From source file:com.sat.spvgt.utils.cucumber.FeatureFileReadTestcase.java

public void createTestcaseDetailFile(String codecdir, String codec) {
    try {/*from  w  w  w . j a  v  a  2 s  .  c  om*/
        File dir = filterSet(codecdir, codec);
        LogHandler.info(System.getProperty("user.dir") + System.getProperty("file.separator") + "scenario.txt");
        rfile = new File(
                System.getProperty("user.dir") + System.getProperty("file.separator") + "scenario.txt");
        if (!rfile.exists()) {
            rfile.createNewFile();
        }
        fw = new FileWriter(rfile.getAbsoluteFile());
        bw = new BufferedWriter(fw);
        LogHandler.info("Getting all .feature files in " + dir.getCanonicalPath()
                + " including those in subdirectories");
        List<File> files = (List<File>) FileUtils.listFiles(dir, extensions, true);
        for (File file : files) {
            LogHandler.info("file: " + file.getCanonicalPath());
            readFeature(file.getCanonicalPath());
        }
        bw.close();
    } catch (Exception e) {

    }

}

From source file:com.liferay.ide.project.core.util.ProjectImportUtil.java

/**
 * This method was added as part of the IDE-381 fix, this method will collect all the binaries based on the binaries
 * list/* w  ww  .j  av  a  2  s.c  o m*/
 *
 * @return true if the directory has some binaries
 */
public static boolean collectBinariesFromDirectory(Collection<File> binaryProjectFiles, File directory,
        boolean recurse, IProgressMonitor monitor) {
    if (monitor.isCanceled()) {
        return false;
    }

    monitor.subTask(NLS.bind(Msgs.checking, directory.getPath()));

    List<String> wildCards = Arrays.asList(ISDKConstants.BINARY_PLUGIN_PROJECT_WILDCARDS);

    WildcardFileFilter wildcardFileFilter = new WildcardFileFilter(wildCards);

    Collection<File> contents = FileUtils.listFiles(directory, wildcardFileFilter,
            DirectoryFileFilter.INSTANCE);

    if (contents == null) {
        return false;
    } else {
        for (File file : contents) {
            if (!binaryProjectFiles.contains(file) && isValidLiferayPlugin(file)) {
                binaryProjectFiles.add(file);
            }
        }
    }

    return true;
}

From source file:ch.ivyteam.ivy.maven.engine.EngineClassLoaderFactory.java

public static List<File> getIvyEngineClassPathFiles(File engineDirectory) {
    List<File> classPathFiles = new ArrayList<>();
    for (String libDirPath : ENGINE_LIB_DIRECTORIES) {
        File jarDir = new File(engineDirectory, libDirPath + File.separator);
        if (!jarDir.isDirectory()) {
            continue;
        }//from ww w .  j  av a2s.c  o  m
        for (File jar : FileUtils.listFiles(jarDir, new String[] { "jar" }, true)) {
            classPathFiles.add(jar);
        }
    }
    return classPathFiles;
}

From source file:at.medevit.elexis.gdt.tools.DirectoryWatcher.java

public void watch() {
    logger.log("Watching " + observers.size() + " directories.", Log.DEBUGMSG);

    try {//from   ww w.  j a  v  a2s .  c o  m
        monitor.start();
    } catch (Exception e) {
        logger.log(e.getMessage(), Log.INFOS);
    }

    // Need to iterate through all registered directories
    for (File directory : directories) {
        LinkedList<File> files = (LinkedList<File>) FileUtils.listFiles(directory, null, false);
        Collections.sort(files, new DateTimeAscending());

        for (Iterator<File> iterator = files.iterator(); iterator.hasNext();) {
            File file = (File) iterator.next();
            processFile(file);
        }
    }
}

From source file:com.autentia.poda.FilesCollection.java

private Collection<File> listFiles(String path, boolean followSymbolicLinks, boolean parseHiddenFiles) {
    File directoryToScan = new File(path);
    logger.info("Searching files in directory: {}", directoryToScan.getAbsolutePath());

    IOFileFilter fileFilter = parseHiddenFiles ? TrueFileFilter.INSTANCE : HiddenFileFilter.VISIBLE;
    IOFileFilter dirFilter = followSymbolicLinks ? TrueFileFilter.INSTANCE : NOT_SYMBOLIC_LINK;
    dirFilter = andFiltersIgnoringTrueFilter(dirFilter, fileFilter);

    Collection<File> scannedFiles = FileUtils.listFiles(directoryToScan, fileFilter, dirFilter);

    logger.info("Found " + scannedFiles.size() + " files.");
    return scannedFiles;
}

From source file:net.peakplatform.sonar.plugins.spring.file.SpringProjectFileSystem.java

public org.sonar.api.resources.File findClass(String className) {
    if (getSourceDirs() == null) {
        return null;
    }/* w w  w . j  a v  a2  s  . com*/
    LOGGER.info("SpringProjectFileSystem findClass getSourceDirs().size(): " + getSourceDirs().size());
    for (File dir : getSourceDirs()) {
        if (dir.exists()) {
            // create DefaultInputFile for each file.
            LOGGER.info("SpringProjectFileSystem findClass dir.getName(): " + dir.getName());
            LOGGER.info("SpringProjectFileSystem findClass dir.getAbsolutePath(): " + dir.getAbsolutePath());
            List<File> files = (List<File>) FileUtils.listFiles(dir, null, true);
            LOGGER.info("SpringProjectFileSystem findClass files.size(): " + files.size());
            for (File file : files) {
                LOGGER.info("SpringProjectFileSystem findClass file.getName(): " + file.getName());
                if (file.getName().equals(className)) {
                    String relativePath = DefaultProjectFileSystem.getRelativePath(file, dir);
                    LOGGER.info("SpringProjectFileSystem findClass relativePath: " + relativePath);
                    return SpringProjectFileSystem.fromIOFile(new DefaultInputFile(dir, relativePath), project);
                }
            }
        }
    }
    return null;
}

From source file:havocx42.Controller.java

private void categorizeFiles(File directory, List<File> weaponFiles, List<File> ammoFiles) {
    String[] extensions = { "con", "tweak" };
    Collection<File> files = FileUtils.listFiles(directory, extensions, true);
    for (File file : files) {
        String contents = null;// w  w w .j  a va 2 s.co m
        try {
            contents = FileUtils.readFileToString(file).toLowerCase();
        } catch (IOException e) {
            e.printStackTrace();
        }
        if (contents != null) {
            if (contents.contains("genericprojectile")) {
                LOGGER.finer("Categorizing " + file.getName() + " as ammunition");
                ammoFiles.add(file);
            } else if (contents.contains("genericfirearm")) {
                LOGGER.finer("Categorizing " + file.getName() + " as weapon");
                weaponFiles.add(file);
            } else {
                LOGGER.finer("Unable to categorize file: " + file.getName());
            }
        }
    }
}

From source file:ar.com.fluxit.jqa.JQASensor.java

@Override
public void analyse(Project project, SensorContext context) {
    try {//from  w  w  w .  ja  v a 2  s. c  o  m
        final RulesContext rulesContext = RulesContextLoader.INSTANCE.load();
        final File buildDirectory = project.getFileSystem().getBuildOutputDir();
        final Collection<File> classFiles = FileUtils.listFiles(buildDirectory,
                new SuffixFileFilter(RulesContextChecker.CLASS_SUFFIX), TrueFileFilter.INSTANCE);
        final Collection<File> classPath = new ArrayList<File>();
        @SuppressWarnings("unchecked")
        final Set<Artifact> artifacts = getProject().getArtifacts();
        for (final Artifact artifact : artifacts) {
            classPath.add(artifact.getFile());
        }
        // Add project classes to classpath
        if (project.getFileSystem().getBuildOutputDir() != null) {
            classPath.add(project.getFileSystem().getBuildOutputDir());
        }
        if (project.getFileSystem().getTestDirs() != null) {
            classPath.addAll(project.getFileSystem().getTestDirs());
        }
        final File sourcesDir = new File((String) getProject().getCompileSourceRoots().get(0));
        LOGGER.info("SourcesDir = " + sourcesDir.getPath());
        final CheckingResult check = RulesContextChecker.INSTANCE.check(getProject().getArtifactId(),
                classFiles, classPath, rulesContext, new File[] { sourcesDir },
                getSourceJavaVersion(getProject()), LOGGER);
        addViolations(context, check);
    } catch (final Exception e) {
        LOGGER.error("An error occurred", e);
        throw new IllegalStateException(e);
    }
}