/** * Return artifact filters configured for this MOJO. * @param additionalFilters optional additional filters to apply * @return the filters */ protected final FilterArtifacts getFilters(ArtifactsFilter... additionalFilters) { FilterArtifacts filters = new FilterArtifacts(); for (ArtifactsFilter additionalFilter : additionalFilters) { filters.addFilter(additionalFilter); } filters.addFilter( new MatchingGroupIdFilter(cleanFilterConfig(this.excludeGroupIds))); if (this.includes != null && !this.includes.isEmpty()) { filters.addFilter(new IncludeFilter(this.includes)); } if (this.excludes != null && !this.excludes.isEmpty()) { filters.addFilter(new ExcludeFilter(this.excludes)); } return filters; }
/** * This method uses a Filtering technique as showed by the maven-dependency-plugin. It allows for * including/excluding artifacts in a number of ways. * * @throws MojoExecutionException */ @SuppressWarnings("unchecked") private void doDependencyResolution() throws ArtifactFilterException { FilterArtifacts filter = new FilterArtifacts(); filter.addFilter(new TransitivityFilter(project.getDependencyArtifacts(), this.excludeTransitive)); filter.addFilter(new ScopeFilter(this.includeScope, this.excludeScope)); filter.addFilter(new TypeFilter(this.includeTypes, this.excludeTypes)); filter.addFilter(new ClassifierFilter(this.includeClassifiers, this.excludeClassifiers)); filter.addFilter(new GroupIdFilter(this.includeGroupIds, this.excludeGroupIds)); filter.addFilter(new ArtifactIdFilter(this.includeArtifactIds, this.excludeArtifactIds)); // start with all artifacts. Set<Artifact> artifacts = project.getArtifacts(); if (includeSelf) { artifacts.add(project.getArtifact()); } // perform filtering dependenciesToList = filter.filter(artifacts); }
filter.addFilter( new org.apache.maven.shared.artifact.filter.collection.ScopeFilter( DependencyUtil.cleanToBeTokenizedString( this.includeScope ), DependencyUtil.cleanToBeTokenizedString( this.excludeScope ) ) ); filter.addFilter( new TypeFilter( DependencyUtil.cleanToBeTokenizedString( this.includeTypes ), DependencyUtil.cleanToBeTokenizedString( this.excludeTypes ) ) ); filter.addFilter( new ClassifierFilter( DependencyUtil.cleanToBeTokenizedString( this.includeClassifiers ), DependencyUtil.cleanToBeTokenizedString( this.excludeClassifiers ) ) ); filter.addFilter( new GroupIdFilter( DependencyUtil.cleanToBeTokenizedString( this.includeGroupIds ), DependencyUtil.cleanToBeTokenizedString( this.excludeGroupIds ) ) ); filter.addFilter( new ArtifactIdFilter( DependencyUtil.cleanToBeTokenizedString( this.includeArtifactIds ), DependencyUtil.cleanToBeTokenizedString( this.excludeArtifactIds ) ) );
/** * Filter the marked dependencies * * @param artifacts The artifacts set {@link Artifact}. * @return status set {@link DependencyStatusSets}. * @throws MojoExecutionException in case of an error. */ protected DependencyStatusSets filterMarkedDependencies( Set<Artifact> artifacts ) throws MojoExecutionException { // remove files that have markers already FilterArtifacts filter = new FilterArtifacts(); filter.clearFilters(); filter.addFilter( getMarkedArtifactFilter() ); Set<Artifact> unMarkedArtifacts; try { unMarkedArtifacts = filter.filter( artifacts ); } catch ( ArtifactFilterException e ) { throw new MojoExecutionException( e.getMessage(), e ); } // calculate the skipped artifacts Set<Artifact> skippedArtifacts = new LinkedHashSet<Artifact>(); skippedArtifacts.addAll( artifacts ); skippedArtifacts.removeAll( unMarkedArtifacts ); return new DependencyStatusSets( unMarkedArtifacts, null, skippedArtifacts ); }
filter.addFilter(new GroupIdFilter(cleanToBeTokenizedString(this.includeGroupIds), cleanToBeTokenizedString(this.excludeGroupIds))); filter.addFilter(new ArtifactIdFilter(cleanToBeTokenizedString(this.includeArtifactIds), cleanToBeTokenizedString(this.excludeArtifactIds))); filter.addFilter(getArtifactScopeFilter());
@SuppressWarnings("unchecked") public void execute() throws MojoExecutionException, MojoFailureException { FilterArtifacts filter = new FilterArtifacts(); filter.addFilter(new ScopeFilter(Artifact.SCOPE_TEST, null)); filter.addFilter(new TypeFilter("jar", null)); Set<Artifact> artifacts; try { artifacts = filter.filter(projectArtifacts); } catch (ArtifactFilterException ex) { throw new MojoExecutionException(ex.getMessage(), ex); } // create output directory with link files outputDirectory.mkdirs(); for (Artifact artifact : artifacts) { Manifest manifest = getManifest(artifact); if (manifest != null) { createLinkFile(artifact, manifest); } } // add output directory as test resource directory Resource resource = new Resource(); resource.setDirectory(outputDirectory.toString()); build.addTestResource(resource); }
filter.addFilter( new ProjectTransitivityFilter( getProject().getDependencyArtifacts(), this.excludeTransitive ) ); filter.addFilter( new ScopeFilter( DependencyUtil.cleanToBeTokenizedString( this.includeScope ), DependencyUtil.cleanToBeTokenizedString( this.excludeScope ) ) ); filter.addFilter( new TypeFilter( DependencyUtil.cleanToBeTokenizedString( this.includeTypes ), DependencyUtil.cleanToBeTokenizedString( this.excludeTypes ) ) ); filter.addFilter( new ClassifierFilter( DependencyUtil.cleanToBeTokenizedString( this.includeClassifiers ), DependencyUtil.cleanToBeTokenizedString( this.excludeClassifiers ) ) ); filter.addFilter( new GroupIdFilter( DependencyUtil.cleanToBeTokenizedString( this.includeGroupIds ), DependencyUtil.cleanToBeTokenizedString( this.excludeGroupIds ) ) ); filter.addFilter( new ArtifactIdFilter( DependencyUtil.cleanToBeTokenizedString( this.includeArtifactIds ), DependencyUtil.cleanToBeTokenizedString( this.excludeArtifactIds ) ) );
filter.addFilter(new ScopeFilter(getScope(), null)); if (includeModules && includeServices) { filter.addFilter(new TypeFilter("aar,mar", null)); } else if (includeModules) { filter.addFilter(new TypeFilter("mar", null)); try { FilterArtifacts filter = new FilterArtifacts(); filter.addFilter(new ScopeFilter(getScope(), null)); filter.addFilter(new TypeFilter("jar", null)); List<URL> urls = new ArrayList<URL>(); for (Artifact artifact : filter.filter(projectArtifacts)) {