List of usage examples for org.apache.commons.io.filefilter DirectoryFileFilter DIRECTORY
IOFileFilter DIRECTORY
To view the source code for org.apache.commons.io.filefilter DirectoryFileFilter DIRECTORY.
Click Source Link
From source file:io.manasobi.utils.FileUtils.java
/** * ? ? File ? . //from w w w. j a v a 2s . c o m * * @param dir * @param includeRootDir ?? ? ? . (true ? ?? ?) * @return ? ? File ? */ public static File[] listDirs(String dir, boolean includeRootDir) { List<File> dirs = (List<File>) org.apache.commons.io.FileUtils.listFilesAndDirs(new File(dir), new NotFileFilter(TrueFileFilter.INSTANCE), DirectoryFileFilter.DIRECTORY); List<File> dirList = new ArrayList<File>(); int index = 0; for (File dirUnit : dirs) { if (index++ == 0 && !includeRootDir) { continue; } dirList.add(dirUnit); index++; } return dirList.toArray(new File[dirList.size()]); }
From source file:kr.co.leem.system.FileSystemUtils.java
/** * ? ?? ./*from ww w . ja v a 2 s . c o m*/ * * @param dirPath . * @param name . * @param fileNameSearch . * @return ? ?. * @see FileUtils#listFiles(File, IOFileFilter, IOFileFilter) * @see FileFilterUtils#nameFileFilter(String) * @see FileFilterUtils#prefixFileFilter(String) * @see FileFilterUtils#suffixFileFilter(String) */ public static File[] getFileList(final String dirPath, final String name, final searchFileName fileNameSearch) { return processIO(new IOCallback<File[]>() { public File[] doInProcessIO() throws IOException, NullPointerException { IOFileFilter fileFilter; switch (fileNameSearch) { case FULL_MATCH: fileFilter = FileFilterUtils.nameFileFilter(name); break; case PREFIX: fileFilter = FileFilterUtils.prefixFileFilter(name); break; case SUFFIX: fileFilter = FileFilterUtils.suffixFileFilter(name); break; default: fileFilter = FileFilterUtils.nameFileFilter(name); break; } Collection<File> files = FileUtils.listFiles(new File(dirPath), fileFilter, DirectoryFileFilter.DIRECTORY); return FileUtils.convertFileCollectionToFileArray(files); } }); }
From source file:com.cheusov.Jrep.java
private static void grep(String[] args) throws Exception { if (args.length == 0) args = stdinFilenames;/*from w ww . ja v a 2 s . co m*/ for (String fileOrDir : args) { try { Iterator fileIterator; File file = new File(fileOrDir); boolean isDir = false; if (opt_directories != Directories.READ) isDir = file.isDirectory(); if (isDir && opt_directories == Directories.SKIP) continue; if (isDir && opt_directories == Directories.RECURSE) { fileIterator = FileUtils.iterateFiles(file, fileFilter, DirectoryFileFilter.DIRECTORY); } else { fileIterator = Arrays.asList(fileOrDir).iterator(); } while (fileIterator.hasNext()) { Object fileObj = fileIterator.next(); String filename; if (fileObj instanceof String) filename = (String) fileObj; else filename = ((File) fileObj).getPath().replaceAll("^^[.]/", ""); if (filename.equals("-")) { processFile(System.in, label); } else { if (fileFilter.accept(new File(filename))) { FileInputStream in = new FileInputStream(filename); processFile(in, filename); in.close(); } } } } catch (IOException e) { if (!opt_s) System.err.println(e.toString()); exitStatus = 2; } } }
From source file:annis.administration.AdministrationDao.java
void importBinaryData(String path, String toplevelCorpusName) { log.info("importing all binary data from ExtData"); File extData = new File(path + "/ExtData"); if (extData.canRead() && extData.isDirectory()) { // import toplevel corpus media files File[] topFiles = extData.listFiles((FileFilter) FileFileFilter.FILE); for (File data : topFiles) { String extension = FilenameUtils.getExtension(data.getName()); try { if (mimeTypeMapping.containsKey(extension)) { log.info("import " + data.getCanonicalPath() + " to staging area"); // search for corpus_ref String sqlScript = "SELECT id FROM _corpus WHERE top_level IS TRUE LIMIT 1"; long corpusID = getJdbcTemplate().queryForLong(sqlScript); importSingleFile(data.getCanonicalPath(), toplevelCorpusName, corpusID); } else { log.warn("not importing " + data.getCanonicalPath() + " since file type is unknown"); }/* w ww.jav a 2 s.c om*/ } catch (IOException ex) { log.error("no canonical path given", ex); } } // get each subdirectory (which corresponds to an document name) File[] documents = extData.listFiles((FileFilter) DirectoryFileFilter.DIRECTORY); for (File doc : documents) { if (doc.isDirectory() && doc.canRead()) { File[] dataFiles = doc.listFiles((FileFilter) FileFileFilter.FILE); for (File data : dataFiles) { String extension = FilenameUtils.getExtension(data.getName()); try { if (mimeTypeMapping.containsKey(extension)) { log.info("import " + data.getCanonicalPath() + " to staging area"); // search for corpus_ref String sqlScript = "SELECT id FROM _corpus WHERE \"name\" = ? LIMIT 1"; long corpusID = getJdbcTemplate().queryForLong(sqlScript, doc.getName()); importSingleFile(data.getCanonicalPath(), toplevelCorpusName, corpusID); } else { log.warn( "not importing " + data.getCanonicalPath() + " since file type is unknown"); } } catch (IOException ex) { log.error("no canonical path given", ex); } } } } } }
From source file:com.jayway.maven.plugins.android.phase09package.ApkMojo.java
private void copyLocalNativeLibraries(final File localNativeLibrariesDirectory, final File destinationDirectory) throws MojoExecutionException { getLog().debug("Copying existing native libraries from " + localNativeLibrariesDirectory); try {/*from w ww . j ava 2 s.c o m*/ IOFileFilter libSuffixFilter = FileFilterUtils.suffixFileFilter(".so"); IOFileFilter gdbserverNameFilter = FileFilterUtils.nameFileFilter("gdbserver"); IOFileFilter orFilter = FileFilterUtils.or(libSuffixFilter, gdbserverNameFilter); IOFileFilter libFiles = FileFilterUtils.and(FileFileFilter.FILE, orFilter); FileFilter filter = FileFilterUtils.or(DirectoryFileFilter.DIRECTORY, libFiles); org.apache.commons.io.FileUtils.copyDirectory(localNativeLibrariesDirectory, destinationDirectory, filter); } catch (IOException e) { getLog().error("Could not copy native libraries: " + e.getMessage(), e); throw new MojoExecutionException("Could not copy native dependency.", e); } }
From source file:frameworks.Masken.java
public static void createTarGzip(String dirPath, String tarGzPath) throws IOException { File inputDirectoryPath = new File(dirPath); File outputFile = new File(tarGzPath); try (FileOutputStream fileOutputStream = new FileOutputStream(outputFile); BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(fileOutputStream); GzipCompressorOutputStream gzipOutputStream = new GzipCompressorOutputStream(bufferedOutputStream); TarArchiveOutputStream tarArchiveOutputStream = new TarArchiveOutputStream(gzipOutputStream)) { tarArchiveOutputStream.setBigNumberMode(TarArchiveOutputStream.BIGNUMBER_POSIX); tarArchiveOutputStream.setLongFileMode(TarArchiveOutputStream.LONGFILE_GNU); List<File> files = new ArrayList<>(FileUtils.listFiles(inputDirectoryPath, new RegexFileFilter("^(.*?)"), DirectoryFileFilter.DIRECTORY)); for (int i = 0; i < files.size(); i++) { File currentFile = files.get(i); if (!currentFile.getName().contains(".tgz")) { String relativeFilePath = new File(inputDirectoryPath.toURI()).toURI() .relativize(new File(currentFile.getAbsolutePath()).toURI()).getPath(); TarArchiveEntry tarEntry = new TarArchiveEntry(currentFile, relativeFilePath); tarEntry.setSize(currentFile.length()); tarArchiveOutputStream.putArchiveEntry(tarEntry); FileInputStream in = new FileInputStream(currentFile); //tarArchiveOutputStream.write(IOUtils.toByteArray(new FileInputStream(currentFile))); tarArchiveOutputStream.write(IOUtils.toByteArray(in)); tarArchiveOutputStream.closeArchiveEntry(); in.close();// w w w .j a v a 2 s. c om } } tarArchiveOutputStream.close(); } }
From source file:net.sourceforge.subsonic.domain.MusicFile.java
/** * Returns all music files that are children of this music file. * * @param includeFiles Whether files should be included in the result. * @param includeDirectories Whether directories should be included in the result. * @param sort Whether to sort files in the same directory. @return All children music files. * @throws IOException If an I/O error occurs. *///w w w .jav a 2 s. c o m public List<MusicFile> getChildren(boolean includeFiles, boolean includeDirectories, boolean sort) throws IOException { FileFilter filter; if (includeFiles && includeDirectories) { filter = TrueFileFilter.INSTANCE; } else if (includeFiles) { filter = FileFileFilter.FILE; } else if (includeDirectories) { filter = DirectoryFileFilter.DIRECTORY; } else { filter = FalseFileFilter.INSTANCE; } File[] children = FileUtil.listFiles(file, filter); List<MusicFile> result = new ArrayList<MusicFile>(children.length); for (File child : children) { try { if (acceptMedia(child)) { result.add(createMusicFile(child)); } } catch (SecurityException x) { LOG.warn("Failed to create MusicFile for " + child, x); } } if (sort) { Collections.sort(result, new MusicFileSorter()); } return result; }
From source file:net.unit8.maven.plugins.handlebars.PrecompileMojo.java
protected void visit(File directory) throws IOException { precompile(directory);/*from w ww .j a v a2 s . c o m*/ File[] children = directory.listFiles((FileFilter) DirectoryFileFilter.DIRECTORY); for (File child : children) { visit(child); } }
From source file:nl.armatiek.xslweb.configuration.Context.java
private void initWebApps() throws Exception { File webAppsDir = new File(homeDir, "webapps"); File[] dirs = webAppsDir.listFiles((FileFilter) DirectoryFileFilter.DIRECTORY); for (File dir : dirs) { File[] webAppFiles = dir.listFiles((FilenameFilter) new NameFileFilter("webapp.xml")); if (webAppFiles.length == 0) { continue; }//from w w w . ja v a2 s .co m File file = webAppFiles[0]; try { WebApp webApp = new WebApp(webAppFiles[0]); webApps.put(webApp.getName(), webApp); webApp.open(); } catch (Exception e) { logger.error(String.format("Error creating webapp \"%s\"", file.getAbsolutePath()), e); } } }
From source file:nl.armatiek.xslweb.saxon.configuration.XSLWebConfiguration.java
private void addCustomExtensionFunctions(WebApp webApp) throws Exception { File libDir = new File(webApp.getHomeDir(), "lib"); if (!libDir.isDirectory()) { return;//from w ww . java 2 s. c o m } List<File> classPath = new ArrayList<File>(); classPath.addAll( FileUtils.listFiles(libDir, new WildcardFileFilter("*.jar"), DirectoryFileFilter.DIRECTORY)); if (classPath.isEmpty() && !XSLWebUtils.hasSubDirectories(libDir)) { return; } classPath.add(libDir); Collection<File> saxonJars = FileUtils.listFiles(new File(Context.getInstance().getWebInfDir(), "lib"), new WildcardFileFilter("*saxon*.jar", IOCase.INSENSITIVE), FalseFileFilter.INSTANCE); classPath.addAll(saxonJars); logger.info("Initializing custom extension functions ..."); ClassFinder finder = new ClassFinder(); finder.add(classPath); ClassFilter filter = new AndClassFilter( // Must extend ExtensionFunctionDefinition class new SubclassClassFilter(ExtensionFunctionDefinition.class), // Must not be abstract new NotClassFilter(new AbstractClassFilter())); Collection<ClassInfo> foundClasses = new ArrayList<ClassInfo>(); finder.findClasses(foundClasses, filter); if (foundClasses.isEmpty()) { logger.info("No custom extension functions found."); return; } ClassLoaderBuilder builder = new ClassLoaderBuilder(); builder.add(classPath); ClassLoader classLoader = builder.createClassLoader(); for (ClassInfo classInfo : foundClasses) { String className = classInfo.getClassName(); if (initializer.isFunctionRegistered(className) || saxonJars.contains(classInfo.getClassLocation())) { continue; } Class<?> clazz = classLoader.loadClass(className); logger.info(String.format("Adding custom extension function class \"%s\" ...", className)); registerExtensionFunction((ExtensionFunctionDefinition) clazz.newInstance()); } }