public static List<File> collect(final File dir, final String regex) { return collect(dir, Pattern.compile(regex)); }
public static List<File> collect(final File dir, final String regex) { return collect(dir, Pattern.compile(regex)); }
public static List<File> collect(final File dir, final FileFilter filter) { final List<File> accepted = new ArrayList<File>(); if (filter.accept(dir)) { accepted.add(dir); } final File[] files = dir.listFiles(); if (files != null) { for (final File file : files) { accepted.addAll(collect(file, filter)); } } return accepted; }
public static List<File> collect(final File dir, final FileFilter filter) { final List<File> accepted = new ArrayList<File>(); if (filter.accept(dir)) { accepted.add(dir); } final File[] files = dir.listFiles(); if (files != null) { for (final File file : files) { accepted.addAll(collect(file, filter)); } } return accepted; }
public static File select(final File dir, final String pattern) { final List<File> matches = collect(dir, pattern); if (matches.size() == 0) { throw new IllegalStateException(String.format("Missing '%s'", pattern)); } if (matches.size() > 1) { throw new IllegalStateException(String.format("Too many found '%s': %s", pattern, join(", ", matches))); } return matches.get(0); }
public static File select(final File dir, final String pattern) { final List<File> matches = collect(dir, pattern); if (matches.size() == 0) { throw new IllegalStateException(String.format("Missing '%s'", pattern)); } if (matches.size() > 1) { throw new IllegalStateException(String.format("Too many found '%s': %s", pattern, join(", ", matches))); } return matches.get(0); }
private String[] toFilePaths(final List<String> urls) { final List<String> files = new ArrayList<String>(); for (final String url : urls) { final File dir = new File(url); if (!dir.isDirectory()) { continue; } for (final File f : Files.collect(dir, new ClassFilter())) { files.add(f.getAbsolutePath()); } } return files.toArray(new String[files.size()]); }
private String[] toFilePaths(final List<String> urls) { final List<String> files = new ArrayList<String>(); for (final String url : urls) { final File dir = new File(url); if (!dir.isDirectory()) { continue; } for (final File f : Files.collect(dir, new ClassFilter())) { files.add(f.getAbsolutePath()); } } return files.toArray(new String[files.size()]); }
public static List<File> collect(final File dir, final Pattern pattern) { return collect(dir, new PatternFileFilter(pattern)); }
public static List<File> collect(final File dir, final Pattern pattern) { return collect(dir, new PatternFileFilter(pattern)); }
final File metaInf = new File(file, META_INF_PREFIX); if (metaInf.exists() && metaInf.isDirectory()) { for (final File f : Files.collect(metaInf, FacesConfigSuffixFilter.INSTANCE)) { if (!f.isDirectory()) { currentSet.add(f.toURI().toURL());
private static String md5Dir(File file) { final MessageDigest md5digest = DigestUtils.getMd5Digest(); for (final File f : Files.collect(file, new FileFilter() { // we don't import commons-io yet @Override public boolean accept(final File pathname) { return true; } })) { if (f.isDirectory()) { continue; } FileInputStream fis = null; try { fis = new FileInputStream(f); DigestUtils.updateDigest(md5digest, fis); } catch (final FileNotFoundException e) { return null; } catch (final IOException e) { return null; } finally { IO.close(fis); } } return Hex.encodeHexString(md5digest.digest()); }
files.add(file); } else { files.addAll(Files.collect(file, TrueFilter.INSTANCE));
files.add(file); } else { files.addAll(Files.collect(file, TrueFilter.INSTANCE));