/** * Decorates a filter so that it only applies to files and not to directories. * * @param filter the filter to decorate, null means an unrestricted filter * @return the decorated filter, never null * @see FileFileFilter#FILE * @since 1.3 */ public static IOFileFilter makeFileOnly(final IOFileFilter filter) { if (filter == null) { return FileFileFilter.FILE; } return new AndFileFilter(FileFileFilter.FILE, filter); }
/** * Decorates a filter so that it only applies to directories and not to files. * * @param filter the filter to decorate, null means an unrestricted filter * @return the decorated filter, never null * @see DirectoryFileFilter#DIRECTORY * @since 1.3 */ public static IOFileFilter makeDirectoryOnly(final IOFileFilter filter) { if (filter == null) { return DirectoryFileFilter.DIRECTORY; } return new AndFileFilter(DirectoryFileFilter.DIRECTORY, filter); }
/** * Returns a filter that ANDs the two specified filters. * * @param filter1 the first filter * @param filter2 the second filter * @return a filter that ANDs the two specified filters * @see #and(IOFileFilter...) * @see AndFileFilter * @deprecated use {@link #and(IOFileFilter...)} */ @Deprecated public static IOFileFilter andFileFilter(final IOFileFilter filter1, final IOFileFilter filter2) { return new AndFileFilter(filter1, filter2); }
/** * Returns a filter that ANDs the two specified filters. * * @param filter1 the first filter * @param filter2 the second filter * @return a filter that ANDs the two specified filters */ public static IOFileFilter andFileFilter(IOFileFilter filter1, IOFileFilter filter2) { return new AndFileFilter(filter1, filter2); }
/** * Decorates a filter so that it only applies to directories and not to files. * * @param filter the filter to decorate, null means an unrestricted filter * @return the decorated filter, never null * @since 1.3 */ public static IOFileFilter makeDirectoryOnly(IOFileFilter filter) { if (filter == null) { return DirectoryFileFilter.DIRECTORY; } return new AndFileFilter(DirectoryFileFilter.DIRECTORY, filter); }
/** * Decorates a filter so that it only applies to files and not to directories. * * @param filter the filter to decorate, null means an unrestricted filter * @return the decorated filter, never null * @since 1.3 */ public static IOFileFilter makeFileOnly(IOFileFilter filter) { if (filter == null) { return FileFileFilter.FILE; } return new AndFileFilter(FileFileFilter.FILE, filter); }
/** * Returns a filter that ANDs the specified filters. * * @param filters the IOFileFilters that will be ANDed together. * @return a filter that ANDs the specified filters * * @throws IllegalArgumentException if the filters are null or contain a * null value. * @see AndFileFilter * @since 2.0 */ public static IOFileFilter and(final IOFileFilter... filters) { return new AndFileFilter(toList(filters)); }
@Override protected IOFileFilter buildFilterUsingConstructor(final List<IOFileFilter> filters) { return new AndFileFilter(filters); }
@Override protected ConditionalFileFilter getConditionalFileFilter() { return new AndFileFilter(); }
/** * Returns a filter that accepts files whose size is >= minimum size * and <= maximum size. * * @param minSizeInclusive the minimum file size (inclusive) * @param maxSizeInclusive the maximum file size (inclusive) * @return an appropriately configured IOFileFilter * @see SizeFileFilter * @since 1.3 */ public static IOFileFilter sizeRangeFileFilter(final long minSizeInclusive, final long maxSizeInclusive ) { final IOFileFilter minimumFilter = new SizeFileFilter(minSizeInclusive, true); final IOFileFilter maximumFilter = new SizeFileFilter(maxSizeInclusive + 1L, false); return new AndFileFilter(minimumFilter, maximumFilter); }
@Override protected IOFileFilter buildFilterUsingAdd(final List<IOFileFilter> filters) { final AndFileFilter filter = new AndFileFilter(); for (final IOFileFilter filter1 : filters) { filter.addFileFilter(filter1); } return filter; }
/** * Returns a filter that accepts files whose size is >= minimum size * and <= maximum size. * * @param minSizeInclusive the minimum file size (inclusive) * @param maxSizeInclusive the maximum file size (inclusive) * @return an appropriately configured IOFileFilter * @since Commons IO 1.3 */ public static IOFileFilter sizeRangeFileFilter(long minSizeInclusive, long maxSizeInclusive ) { IOFileFilter minimumFilter = new SizeFileFilter(minSizeInclusive, true); IOFileFilter maximumFilter = new SizeFileFilter(maxSizeInclusive + 1L, false); return new AndFileFilter(minimumFilter, maximumFilter); }
@Test public void testAnd() throws Exception { final IOFileFilter trueFilter = TrueFileFilter.INSTANCE; final IOFileFilter falseFilter = FalseFileFilter.INSTANCE; assertFiltering(new AndFileFilter(trueFilter, trueFilter), new File("foo.test"), true); assertFiltering(new AndFileFilter(trueFilter, falseFilter), new File("foo.test"), false); assertFiltering(new AndFileFilter(falseFilter, trueFilter), new File("foo.test"), false); assertFiltering(new AndFileFilter(falseFilter, falseFilter), new File("foo.test"), false); final List<IOFileFilter> filters = new ArrayList<>(); assertFiltering( new AndFileFilter( filters ), new File( "test" ), false ); assertFiltering( new AndFileFilter(), new File( "test" ), false ); try { new AndFileFilter(falseFilter, null); fail(); } catch (final IllegalArgumentException ignore) { } try { new AndFileFilter(null, falseFilter); fail(); } catch (final IllegalArgumentException ignore) { } final AndFileFilter f = new AndFileFilter(null); assertTrue(f.getFileFilters().isEmpty()); assertNotNull(f.toString()); // TODO better tests }
/** * Returns a filter that ANDs the two specified filters. * * @param filter1 the first filter * @param filter2 the second filter * @return a filter that ANDs the two specified filters */ public static IOFileFilter andFileFilter(IOFileFilter filter1, IOFileFilter filter2) { return new AndFileFilter(filter1, filter2); }
public File getPrev(long date) { File current = get(date); List<IOFileFilter> filters = new ArrayList<IOFileFilter>(); filters.add(new AgeFileFilter(date)); filters.add(new NameFileFilter(current.getName())); List<File> files = new ArrayList<File>( storage.list(new AndFileFilter(filters))); if (files.size() >= 2) { return files.get(files.size() - 2); } return null; }
public String[] getDirectoryContent(String path) throws RegistryException { File directory = new File(baseDir, path); if (!directory.exists() || !directory.isDirectory()) { throw new RegistryException("A directory does not exist at path: " + directory.getAbsolutePath()); } return directory.list(new AndFileFilter(HiddenFileFilter.VISIBLE, new OrFileFilter(DirectoryFileFilter.INSTANCE, FileFileFilter.FILE))); }
public List<File> getIndividualSummaries() { FileFilter fileFilter = new AndFileFilter( new PrefixFileFilter(FORK), new SuffixFileFilter(JSON)); return asList(inputDirectory.listFiles(fileFilter)); } }
@Override public File[] getFiles(FileType fileType, Pool pool, Device device, TestIdentifier testIdentifier) { FileFilter fileFilter = new AndFileFilter( new PrefixFileFilter(testIdentifier.toString()), new SuffixFileFilter(fileType.getSuffix())); File deviceDirectory = get(output.getAbsolutePath(), fileType.getDirectory(), pool.getName(), device.getSafeSerial()).toFile(); return deviceDirectory.listFiles(fileFilter); }
public static Collection<File> getPomFiles( File repoPath ) { Collection<File> pomFiles = new ArrayList<File>(); Collection<File> leafDirectories = getLeafDirectories( repoPath ); for ( File leafDirectory : leafDirectories ) { IOFileFilter fileFilter = new AndFileFilter( new WildcardFileFilter( "*.pom" ), new NotFileFilter( new SuffixFileFilter( "sha1" ) ) ); pomFiles.addAll( FileUtils.listFiles( leafDirectory, fileFilter, null ) ); } return pomFiles; }
/** * @return an IOFileFilter which represents the files that should be culled by this FilePurgeCustomAge */ public IOFileFilter getFileFilter() { AndFileFilter andFileFilter = new AndFileFilter(); MaxAgePurgeFileFilter maxAgeFilter = new MaxAgePurgeFileFilter(this); DirectoryNameFileFilter directoryNameFilter = new DirectoryNameFileFilter(this); andFileFilter.addFileFilter(maxAgeFilter); andFileFilter.addFileFilter(directoryNameFilter); return andFileFilter; }