Class PatternIncludesArtifactFilter
java.lang.Object
org.apache.maven.shared.artifact.filter.PatternIncludesArtifactFilter
- All Implemented Interfaces:
org.apache.maven.artifact.resolver.filter.ArtifactFilter
,StatisticsReportingArtifactFilter
- Direct Known Subclasses:
PatternExcludesArtifactFilter
public class PatternIncludesArtifactFilter
extends Object
implements org.apache.maven.artifact.resolver.filter.ArtifactFilter, StatisticsReportingArtifactFilter
TODO: include in maven-artifact in future
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class
private static interface
private static enum
private static class
private static class
Matches all inputprivate static class
Negative patternprivate static class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final boolean
Whether the dependency trail should be checkedprivate static final String
private final List<org.apache.maven.artifact.Artifact>
Set of artifacts that have been filtered outprivate static final PatternIncludesArtifactFilter.Pattern
private final Set<PatternIncludesArtifactFilter.Pattern>
Holds the set of compiled patternsprivate final Set<PatternIncludesArtifactFilter.Pattern>
Set of patterns that have been triggeredprivate static final String
-
Constructor Summary
ConstructorsConstructorDescriptionPatternIncludesArtifactFilter
(Collection<String> patterns) Constructor for PatternIncludesArtifactFilter.PatternIncludesArtifactFilter
(Collection<String> patterns, boolean actTransitively) Constructor for PatternIncludesArtifactFilter. -
Method Summary
Modifier and TypeMethodDescriptionprivate static PatternIncludesArtifactFilter.Artifactoid
Parses elements ofArtifact.getDependencyTrail()
list, they are eitherG:A:T:V
or if artifact has classifierG:A:T:C:V
, so strictly 4 or 5 segments only.private static PatternIncludesArtifactFilter.Artifactoid
adapt
(org.apache.maven.artifact.Artifact artifact) protected void
addFilteredArtifact
(org.apache.maven.artifact.Artifact artifact) addFilteredArtifact.private static PatternIncludesArtifactFilter.Pattern
Compiles pattern string intoPatternIncludesArtifactFilter.Pattern
.protected String
protected String
boolean
hasMissedCriteria.boolean
include
(org.apache.maven.artifact.Artifact artifact) private static boolean
private Boolean
match
(PatternIncludesArtifactFilter.Artifactoid artifactoid) protected boolean
patternMatches
(org.apache.maven.artifact.Artifact artifact) void
reportFilteredArtifacts
(org.slf4j.Logger logger) reportFilteredArtifacts.void
reportMissedCriteria
(org.slf4j.Logger logger) reportMissedCriteria.private static String[]
splitAndTokenize
(String pattern) Splits the pattern string into tokens, replacing empty tokens withANY
for patterns like::val
so it retains the position of token.private static PatternIncludesArtifactFilter.Pattern
toPattern
(String pattern, String token, PatternIncludesArtifactFilter.Coordinate... coordinates) private static PatternIncludesArtifactFilter.Pattern
toPattern
(String token, PatternIncludesArtifactFilter.Coordinate... coordinates) toString()
-
Field Details
-
SEP
-
patterns
Holds the set of compiled patterns -
actTransitively
private final boolean actTransitivelyWhether the dependency trail should be checked -
patternsTriggered
Set of patterns that have been triggered -
filteredArtifact
Set of artifacts that have been filtered out -
ANY
- See Also:
-
MATCH_ALL_PATTERN
-
-
Constructor Details
-
PatternIncludesArtifactFilter
Constructor for PatternIncludesArtifactFilter.
- Parameters:
patterns
- The pattern to be used.
-
PatternIncludesArtifactFilter
Constructor for PatternIncludesArtifactFilter.
- Parameters:
patterns
- The pattern to be used.actTransitively
- transitive yes/no.
-
-
Method Details
-
include
public boolean include(org.apache.maven.artifact.Artifact artifact) - Specified by:
include
in interfaceorg.apache.maven.artifact.resolver.filter.ArtifactFilter
-
patternMatches
protected boolean patternMatches(org.apache.maven.artifact.Artifact artifact) -
addFilteredArtifact
protected void addFilteredArtifact(org.apache.maven.artifact.Artifact artifact) addFilteredArtifact.
- Parameters:
artifact
- add artifact to the filtered artifacts list.
-
reportMissedCriteria
public void reportMissedCriteria(org.slf4j.Logger logger) Description copied from interface:StatisticsReportingArtifactFilter
reportMissedCriteria.
- Specified by:
reportMissedCriteria
in interfaceStatisticsReportingArtifactFilter
- Parameters:
logger
- the logger
-
toString
-
getPatternsAsString
-
getFilterDescription
-
reportFilteredArtifacts
public void reportFilteredArtifacts(org.slf4j.Logger logger) Description copied from interface:StatisticsReportingArtifactFilter
reportFilteredArtifacts.
- Specified by:
reportFilteredArtifacts
in interfaceStatisticsReportingArtifactFilter
- Parameters:
logger
- the logger
-
hasMissedCriteria
public boolean hasMissedCriteria()Description copied from interface:StatisticsReportingArtifactFilter
hasMissedCriteria.
- Specified by:
hasMissedCriteria
in interfaceStatisticsReportingArtifactFilter
- Returns:
true
if missed criteria;false
otherwise.
-
adapt
private static PatternIncludesArtifactFilter.Artifactoid adapt(org.apache.maven.artifact.Artifact artifact) -
adapt
Parses elements ofArtifact.getDependencyTrail()
list, they are eitherG:A:T:V
or if artifact has classifierG:A:T:C:V
, so strictly 4 or 5 segments only. -
splitAndTokenize
Splits the pattern string into tokens, replacing empty tokens withANY
for patterns like::val
so it retains the position of token. -
compile
Compiles pattern string intoPatternIncludesArtifactFilter.Pattern
. TODO: patterns seems NOT documented anywhere, so best we have is source below. TODO: patterns in some cases (3, 2 tokens) seems ambiguous, we may need to clean up the specs -
match
-