/** * Create a filter around many filters, one of which must match. * * @param list * list of filters to match against. Must contain at least 2 * filters. * @return a filter that must match at least one input filter. */ public static TreeFilter create(Collection<TreeFilter> list) { if (list.size() < 2) throw new IllegalArgumentException(JGitText.get().atLeastTwoFiltersNeeded); final TreeFilter[] subfilters = new TreeFilter[list.size()]; list.toArray(subfilters); if (subfilters.length == 2) return create(subfilters[0], subfilters[1]); return new List(subfilters); }
/** * Create a filter around many filters, one of which must match. * * @param list * list of filters to match against. Must contain at least 2 * filters. * @return a filter that must match at least one input filter. */ public static TreeFilter create(TreeFilter[] list) { if (list.length == 2) return create(list[0], list[1]); if (list.length < 2) throw new IllegalArgumentException(JGitText.get().atLeastTwoFiltersNeeded); final TreeFilter[] subfilters = new TreeFilter[list.length]; System.arraycopy(list, 0, subfilters, 0, list.length); return new List(subfilters); }
private static TreeFilter orDiff(final TreeFilter[] filters) { final TreeFilter filter; if (filters.length > 1) filter = OrTreeFilter.create(filters); else filter = filters[0]; return AndTreeFilter.create(filter, ANY_DIFF); }
/** * Create a filter around many filters, one of which must match. * * @param list * list of filters to match against. Must contain at least 2 * filters. * @return a filter that must match at least one input filter. */ public static TreeFilter create(final Collection<TreeFilter> list) { if (list.size() < 2) throw new IllegalArgumentException(JGitText.get().atLeastTwoFiltersNeeded); final TreeFilter[] subfilters = new TreeFilter[list.size()]; list.toArray(subfilters); if (subfilters.length == 2) return create(subfilters[0], subfilters[1]); return new List(subfilters); }
/** * Creates a filter for the given files, will make sure that renames/copies * of all files will be followed. * @param paths the list of files to follow, must not be <code>null</code> or empty * @return the ORed list of {@link FollowFilter follow filters} */ private TreeFilter createFollowFilterFor(List<String> paths) { if (paths == null || paths.isEmpty()) throw new IllegalArgumentException("paths must not be null nor empty"); //$NON-NLS-1$ DiffConfig diffConfig = currentRepo.getConfig().get(DiffConfig.KEY); List<TreeFilter> followFilters = new ArrayList<TreeFilter>(paths.size()); for (String path : paths) followFilters.add(createFollowFilter(path, diffConfig)); if (followFilters.size() == 1) return followFilters.get(0); return OrTreeFilter.create(followFilters); }
/** * Create a filter around many filters, one of which must match. * * @param list * list of filters to match against. Must contain at least 2 * filters. * @return a filter that must match at least one input filter. */ public static TreeFilter create(Collection<TreeFilter> list) { if (list.size() < 2) throw new IllegalArgumentException(JGitText.get().atLeastTwoFiltersNeeded); final TreeFilter[] subfilters = new TreeFilter[list.size()]; list.toArray(subfilters); if (subfilters.length == 2) return create(subfilters[0], subfilters[1]); return new List(subfilters); }
/** * Create a filter around many filters, one of which must match. * * @param list * list of filters to match against. Must contain at least 2 * filters. * @return a filter that must match at least one input filter. */ public static TreeFilter create(final TreeFilter[] list) { if (list.length == 2) return create(list[0], list[1]); if (list.length < 2) throw new IllegalArgumentException(JGitText.get().atLeastTwoFiltersNeeded); final TreeFilter[] subfilters = new TreeFilter[list.length]; System.arraycopy(list, 0, subfilters, 0, list.length); return new List(subfilters); }
/** * Create a filter around many filters, one of which must match. * * @param list * list of filters to match against. Must contain at least 2 * filters. * @return a filter that must match at least one input filter. */ public static TreeFilter create(TreeFilter[] list) { if (list.length == 2) return create(list[0], list[1]); if (list.length < 2) throw new IllegalArgumentException(JGitText.get().atLeastTwoFiltersNeeded); final TreeFilter[] subfilters = new TreeFilter[list.length]; System.arraycopy(list, 0, subfilters, 0, list.length); return new List(subfilters); }
private TreeFilter createTreeFilter() { if (filterResources == null) return TreeFilter.ALL; List<TreeFilter> filters = new ArrayList<TreeFilter>(); for (IResource resource : filterResources) { RepositoryMapping mapping = RepositoryMapping.getMapping(resource); if (mapping != null) { DiffConfig diffConfig = mapping.getRepository().getConfig().get(DiffConfig.KEY); String path = mapping.getRepoRelativePath(resource); if (path != null && !"".equals(path)) { //$NON-NLS-1$ if (resource.getType() == IResource.FILE) filters.add(FollowFilter.create(path, diffConfig)); else filters.add(AndTreeFilter.create( PathFilter.create(path), TreeFilter.ANY_DIFF)); } } } if (filters.isEmpty()) return TreeFilter.ALL; else if (filters.size() == 1) return filters.get(0); else return OrTreeFilter.create(filters); } }
if (orFilters.size() > 1) { TreeFilter andFilter = AndTreeFilter.create(new NotIgnoredFilter(baseTreeIndex), OrTreeFilter.create(orFilters)); tw.setFilter(andFilter); } else if (orFilters.size() == 1) { tw.setFilter(OrTreeFilter.create(orFilters)); else if (orFilters.size() == 1) tw.setFilter(orFilters.get(0));
for (String filterPath : filterPathStrings) suffixFilters.add(PathFilter.create(filterPath)); TreeFilter otf = OrTreeFilter.create(suffixFilters); tw.setFilter(otf); } else if (filterPathStrings.size() > 0) {
for (String filterPath : filterPaths) suffixFilters.add(PathFilter.create(filterPath)); TreeFilter otf = OrTreeFilter.create(suffixFilters); tw.setFilter(AndTreeFilter.create(otf, notIgnoredFilter)); } else if (filterPaths.size() > 0) {