@SuppressWarnings("AccessingNonPublicFieldOfAnotherObject") private static SuffixSet extensions( final FsDriverProvider provider) { if (provider instanceof TArchiveDetector) return new SuffixSet(((TArchiveDetector) provider).suffixes); final Map<FsScheme, FsDriver> map = provider.get(); final SuffixSet set = new SuffixSet(); for (final Map.Entry<FsScheme, FsDriver> entry : map.entrySet()) if (entry.getValue().isFederated()) set.add(entry.getKey().toString()); return set; }
@Before public void setUp() { empty = new SuffixSet(""); sets = new SuffixSet[] { new SuffixSet("suffix1|suffix2"), new SuffixSet("suffix2|suffix1"), new SuffixSet(".suffix1|.suffix2"), new SuffixSet(".suffix2|.suffix1"), new SuffixSet("SUFFIX1|SUFFIX2"), new SuffixSet("SUFFIX2|SUFFIX1"), new SuffixSet(".SUFFIX1|.SUFFIX2"), new SuffixSet(".SUFFIX2|.SUFFIX1"), new SuffixSet("SuFfIx1|SuFfIx2"), new SuffixSet("SuFfIx2|SuFfIx1"), new SuffixSet(".sUfFiX1|.sUfFiX2"), new SuffixSet(".sUfFiX2|.sUfFiX1"), new SuffixSet("suffix1|.suffix2|suffix2|.suffix1"), new SuffixSet("suffix2|.suffix1|suffix1|.suffix2"), new SuffixSet("SUFFIX1|.SUFFIX2|SUFFIX2|.SUFFIX1"), new SuffixSet("SUFFIX2|.SUFFIX1|SUFFIX1|.SUFFIX2"), new SuffixSet("SuFfIx1|.sUfFiX2|SuFfIx2|.sUfFiX1"), new SuffixSet("SuFfIx2|.sUfFiX1|SuFfIx1|.sUfFiX2"), new SuffixSet("suffix1|.suffix1|SUFFIX1|.SUFFIX1|suffix2|.suffix2|SUFFIX2|.SUFFIX2"), new SuffixSet("suffix2|.suffix2|SUFFIX2|.SUFFIX2|suffix1|.suffix1|SUFFIX1|.SUFFIX1"), new SuffixSet("suffix1|.suffix1|SUFFIX1|.SUFFIX1|SuFfIx1|.sUfFiX1|suffix2|.suffix2|SUFFIX2|.SUFFIX2|SuFfIx2|.sUfFiX2"), new SuffixSet("suffix2|.suffix2|SUFFIX2|.SUFFIX2|SuFfIx2|.sUfFiX2|suffix1|.suffix1|SUFFIX1|.SUFFIX1|SuFfIx1|.sUfFiX1"), new SuffixSet("suffix1||.suffix1||SUFFIX1||.SUFFIX1||SuFfIx1||.sUfFiX1||suffix2||.suffix2||SUFFIX2||.SUFFIX2||SuFfIx2||.sUfFiX2"), new SuffixSet("suffix2||.suffix2||SUFFIX2||.SUFFIX2||SuFfIx2||.sUfFiX2||suffix1||.suffix1||SUFFIX1||.SUFFIX1||SuFfIx1||.sUfFiX1"), }; }
private static Map<String, SuffixSet> compact( final Map<FsScheme, FsDriver> input) { final Map<String, SuffixSet> output = new TreeMap<String, SuffixSet>(); for (final Entry<FsScheme, FsDriver> entry : input.entrySet()) { final String scheme = entry.getKey().toString(); final String clazz = entry.getValue().getClass().getName(); SuffixSet suffixes = output.get(clazz); if (null == suffixes) { suffixes = new SuffixSet(); output.put(clazz, suffixes); } suffixes.add(scheme); } return Collections.unmodifiableMap(output); } }
@Test public void testGet() { for (String scheme : new SuffixSet(DRIVER_LIST)) assertThat(instance.get().get(FsScheme.create(scheme)), notNullValue()); }
protected final FsScheme getScheme() { return FsScheme.create(new SuffixSet(getSuffixList()).iterator().next()); }
@Test public void testNullMapping() { for (TArchiveDetector delegate : new TArchiveDetector[] { NIL, ALL, }) { TArchiveDetector detector = new TArchiveDetector( delegate, "zip", null); // remove zip suffix assertFalse(new SuffixSet(detector.toString()).contains("zip")); detector = new TArchiveDetector( delegate, ".ZIP", null); // remove zip suffix assertFalse(new SuffixSet(detector.toString()).contains("zip")); } }