public abstract class AbstractRegexpMethodPointcut extends StaticMethodMatcherPointcut implements Serializable
Note: the regular expressions must be a match. For example,
.*get.* will match com.mycom.Foo.getBar().
get.* will not.
This base class is serializable. Subclasses should declare all fields transient - the initPatternRepresentation method in this class will be invoked again on the client side on deserialization.
JdkRegexpMethodPointcut,
Serialized FormTRUE| Constructor and Description |
|---|
AbstractRegexpMethodPointcut() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object other) |
String[] |
getExcludedPatterns()
Returns the regular expressions for exclusion matching.
|
String[] |
getPatterns()
Return the regular expressions for method matching.
|
int |
hashCode() |
protected abstract void |
initExcludedPatternRepresentation(String[] patterns)
Subclasses must implement this to initialize regexp pointcuts.
|
protected abstract void |
initPatternRepresentation(String[] patterns)
Subclasses must implement this to initialize regexp pointcuts.
|
boolean |
matches(Method method,
Class targetClass)
Try to match the regular expression against the fully qualified name
of the target class as well as against the method's declaring class,
plus the name of the method.
|
protected abstract boolean |
matches(String pattern,
int patternIndex)
Does the pattern at the given index match this string?
|
protected abstract boolean |
matchesExclusion(String pattern,
int patternIndex)
Does the exclusion pattern at the given index match this string?
|
protected boolean |
matchesPattern(String signatureString)
Match the specified candidate against the configured patterns.
|
void |
setExcludedPattern(String excludedPattern)
Convenience method when we have only a single exclusion pattern.
|
void |
setExcludedPatterns(String[] excludedPatterns)
Set the regular expressions defining methods to match for exclusion.
|
void |
setPattern(String pattern)
Convenience method when we have only a single pattern.
|
void |
setPatterns(String[] patterns)
Set the regular expressions defining methods to match.
|
String |
toString() |
getClassFilter, getMethodMatcher, setClassFilterisRuntime, matchespublic void setPattern(String pattern)
setPatterns(java.lang.String[]), not both.setPatterns(java.lang.String[])public void setPatterns(String[] patterns)
public String[] getPatterns()
public void setExcludedPattern(String excludedPattern)
setExcludedPatterns(java.lang.String[]), not both.public void setExcludedPatterns(String[] excludedPatterns)
public String[] getExcludedPatterns()
public boolean matches(Method method, Class targetClass)
matches in interface MethodMatchermethod - the candidate methodtargetClass - the target class (may be null, in which case
the candidate class must be taken to be the method's declaring class)protected boolean matchesPattern(String signatureString)
signatureString - "java.lang.Object.hashCode" style signatureprotected abstract void initPatternRepresentation(String[] patterns) throws IllegalArgumentException
This method will be invoked from the setPatterns(java.lang.String[]) method,
and also on deserialization.
patterns - the patterns to initializeIllegalArgumentException - in case of an invalid patternprotected abstract void initExcludedPatternRepresentation(String[] patterns) throws IllegalArgumentException
This method will be invoked from the setExcludedPatterns(java.lang.String[]) method,
and also on deserialization.
patterns - the patterns to initializeIllegalArgumentException - in case of an invalid patternprotected abstract boolean matches(String pattern, int patternIndex)
pattern - String pattern to matchpatternIndex - index of pattern from 0true if there is a match, else false.protected abstract boolean matchesExclusion(String pattern, int patternIndex)
pattern - String pattern to match.patternIndex - index of pattern starting from 0.true if there is a match, else false.