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 java.lang.Object implements org.apache.maven.artifact.resolver.filter.ArtifactFilter, StatisticsReportingArtifactFilter
TODO: include in maven-artifact in future- See Also:
StrictPatternIncludesArtifactFilter
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
PatternIncludesArtifactFilter.AndPattern
private static interface
PatternIncludesArtifactFilter.Artifactoid
private static class
PatternIncludesArtifactFilter.Coordinate
private static class
PatternIncludesArtifactFilter.CoordinateMatchingPattern
private static class
PatternIncludesArtifactFilter.MatchAllPattern
Matches all inputprivate static class
PatternIncludesArtifactFilter.NegativePattern
Negative patternprivate static class
PatternIncludesArtifactFilter.Pattern
-
Field Summary
Fields Modifier and Type Field Description private boolean
actTransitively
Whether the dependency trail should be checkedprivate static java.lang.String
ANY
private java.util.List<org.apache.maven.artifact.Artifact>
filteredArtifact
Set of artifacts that have been filtered outprivate static PatternIncludesArtifactFilter.Pattern
MATCH_ALL_PATTERN
private java.util.Set<PatternIncludesArtifactFilter.Pattern>
patterns
Holds the set of compiled patternsprivate java.util.Set<PatternIncludesArtifactFilter.Pattern>
patternsTriggered
Set of patterns that have been triggeredprivate static java.lang.String
SEP
-
Constructor Summary
Constructors Constructor Description PatternIncludesArtifactFilter(java.util.Collection<java.lang.String> patterns)
Constructor for PatternIncludesArtifactFilter.PatternIncludesArtifactFilter(java.util.Collection<java.lang.String> patterns, boolean actTransitively)
Constructor for PatternIncludesArtifactFilter.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static PatternIncludesArtifactFilter.Artifactoid
adapt(java.lang.String depTrailString)
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
compile(java.lang.String pattern)
Compiles pattern string intoPatternIncludesArtifactFilter.Pattern
.protected java.lang.String
getFilterDescription()
protected java.lang.String
getPatternsAsString()
boolean
hasMissedCriteria()
hasMissedCriteria.boolean
include(org.apache.maven.artifact.Artifact artifact)
private static boolean
match(java.lang.String pattern, boolean containsAsterisk, java.lang.String value)
private java.lang.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 java.lang.String[]
splitAndTokenize(java.lang.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(java.lang.String pattern, java.lang.String token, PatternIncludesArtifactFilter.Coordinate... coordinates)
private static PatternIncludesArtifactFilter.Pattern
toPattern(java.lang.String token, PatternIncludesArtifactFilter.Coordinate... coordinates)
java.lang.String
toString()
-
-
-
Field Detail
-
SEP
private static final java.lang.String SEP
-
patterns
private final java.util.Set<PatternIncludesArtifactFilter.Pattern> patterns
Holds the set of compiled patterns
-
actTransitively
private final boolean actTransitively
Whether the dependency trail should be checked
-
patternsTriggered
private final java.util.Set<PatternIncludesArtifactFilter.Pattern> patternsTriggered
Set of patterns that have been triggered
-
filteredArtifact
private final java.util.List<org.apache.maven.artifact.Artifact> filteredArtifact
Set of artifacts that have been filtered out
-
ANY
private static final java.lang.String ANY
- See Also:
- Constant Field Values
-
MATCH_ALL_PATTERN
private static final PatternIncludesArtifactFilter.Pattern MATCH_ALL_PATTERN
-
-
Constructor Detail
-
PatternIncludesArtifactFilter
public PatternIncludesArtifactFilter(java.util.Collection<java.lang.String> patterns)
Constructor for PatternIncludesArtifactFilter.
- Parameters:
patterns
- The pattern to be used.
-
PatternIncludesArtifactFilter
public PatternIncludesArtifactFilter(java.util.Collection<java.lang.String> patterns, boolean actTransitively)
Constructor for PatternIncludesArtifactFilter.
- Parameters:
patterns
- The pattern to be used.actTransitively
- transitive yes/no.
-
-
Method Detail
-
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)
-
match
private java.lang.Boolean match(PatternIncludesArtifactFilter.Artifactoid artifactoid)
-
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
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
getPatternsAsString
protected java.lang.String getPatternsAsString()
-
getFilterDescription
protected java.lang.String 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
private static PatternIncludesArtifactFilter.Artifactoid adapt(java.lang.String depTrailString)
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
private static java.lang.String[] splitAndTokenize(java.lang.String pattern)
Splits the pattern string into tokens, replacing empty tokens withANY
for patterns like::val
so it retains the position of token.
-
compile
private static PatternIncludesArtifactFilter.Pattern compile(java.lang.String pattern)
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
-
toPattern
private static PatternIncludesArtifactFilter.Pattern toPattern(java.lang.String token, PatternIncludesArtifactFilter.Coordinate... coordinates)
-
toPattern
private static PatternIncludesArtifactFilter.Pattern toPattern(java.lang.String pattern, java.lang.String token, PatternIncludesArtifactFilter.Coordinate... coordinates)
-
match
private static boolean match(java.lang.String pattern, boolean containsAsterisk, java.lang.String value)
-
-