@Override
    public boolean accept(final Path file) {
        if(pattern.matcher(file.getName()).matches()) {
            return false;
        }
        if(file.getType().contains(Path.Type.upload)) {
            return false;
        }
        if(file.attributes().isDuplicate()) {
            return false;
        }
        if(file.attributes().isHidden()) {
            return false;
        }
        return true;
    }
@Test
    public void testAccept() {
        final DefaultBrowserFilter f = new DefaultBrowserFilter();
        assertFalse(f.accept(new Path(".f", EnumSet.of(Path.Type.file))));
        assertTrue(f.accept(new Path("f.f", EnumSet.of(Path.Type.file))));
        final Path d = new Path("f.f", EnumSet.of(Path.Type.file));
        d.attributes().setDuplicate(true);
        assertFalse(f.accept(d));
    }