org.aspectj.weaver.patterns
Class ExactAnnotationTypePattern

java.lang.Object
  extended by org.aspectj.weaver.patterns.PatternNode
      extended by org.aspectj.weaver.patterns.AnnotationTypePattern
          extended by org.aspectj.weaver.patterns.ExactAnnotationTypePattern
All Implemented Interfaces:
IHasPosition, IHasSourceLocation
Direct Known Subclasses:
BindingAnnotationFieldTypePattern, BindingAnnotationTypePattern, ExactAnnotationFieldTypePattern

public class ExactAnnotationTypePattern
extends AnnotationTypePattern

Matches an annotation of a given type


Field Summary
 
Fields inherited from class org.aspectj.weaver.patterns.AnnotationTypePattern
AND, ANY, ANY_KEY, BINDING, BINDINGFIELD, ELLIPSIS, ELLIPSIS_KEY, EXACT, EXACTFIELD, NONE, NOT, OR, WILD
 
Constructor Summary
ExactAnnotationTypePattern(UnresolvedType annotationType, java.util.Map<java.lang.String,java.lang.String> annotationValues)
           
 
Method Summary
 java.lang.Object accept(PatternNodeVisitor visitor, java.lang.Object data)
           
 boolean equals(java.lang.Object obj)
           
 FuzzyBoolean fastMatches(AnnotatedElement annotated)
           
 UnresolvedType getAnnotationType()
           
 java.util.Map<java.lang.String,java.lang.String> getAnnotationValues()
           
 ResolvedType getResolvedAnnotationType()
           
 int hashCode()
           
 FuzzyBoolean matches(AnnotatedElement annotated)
           
 FuzzyBoolean matches(AnnotatedElement annotated, ResolvedType[] parameterAnnotations)
           
 FuzzyBoolean matchesRuntimeType(AnnotatedElement annotated)
           
 AnnotationTypePattern parameterizeWith(java.util.Map typeVariableMap, World w)
           
static AnnotationTypePattern read(VersionedDataInputStream s, ISourceContext context)
           
 void resolve(World world)
           
 AnnotationTypePattern resolveBindings(IScope scope, Bindings bindings, boolean allowBinding)
          This can modify in place, or return a new TypePattern if the type changes.
 java.lang.String toString()
           
 void write(CompressingDataOutputStream s)
           
 
Methods inherited from class org.aspectj.weaver.patterns.AnnotationTypePattern
isAny, isForParameterAnnotationMatch, remapAdviceFormals, setForParameterAnnotationMatch
 
Methods inherited from class org.aspectj.weaver.patterns.PatternNode
copyLocationFrom, getEnd, getFileName, getSourceContext, getSourceLocation, getStart, readLocation, setLocation, traverse, writeLocation
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ExactAnnotationTypePattern

public ExactAnnotationTypePattern(UnresolvedType annotationType,
                                  java.util.Map<java.lang.String,java.lang.String> annotationValues)
Method Detail

getResolvedAnnotationType

public ResolvedType getResolvedAnnotationType()

getAnnotationType

public UnresolvedType getAnnotationType()

getAnnotationValues

public java.util.Map<java.lang.String,java.lang.String> getAnnotationValues()

fastMatches

public FuzzyBoolean fastMatches(AnnotatedElement annotated)
Overrides:
fastMatches in class AnnotationTypePattern

matches

public FuzzyBoolean matches(AnnotatedElement annotated)
Specified by:
matches in class AnnotationTypePattern

matches

public FuzzyBoolean matches(AnnotatedElement annotated,
                            ResolvedType[] parameterAnnotations)
Specified by:
matches in class AnnotationTypePattern

matchesRuntimeType

public FuzzyBoolean matchesRuntimeType(AnnotatedElement annotated)

resolve

public void resolve(World world)
Specified by:
resolve in class AnnotationTypePattern

resolveBindings

public AnnotationTypePattern resolveBindings(IScope scope,
                                             Bindings bindings,
                                             boolean allowBinding)
Description copied from class: AnnotationTypePattern
This can modify in place, or return a new TypePattern if the type changes.

Overrides:
resolveBindings in class AnnotationTypePattern

parameterizeWith

public AnnotationTypePattern parameterizeWith(java.util.Map typeVariableMap,
                                              World w)
Specified by:
parameterizeWith in class AnnotationTypePattern

write

public void write(CompressingDataOutputStream s)
           throws java.io.IOException
Specified by:
write in class PatternNode
Throws:
java.io.IOException

read

public static AnnotationTypePattern read(VersionedDataInputStream s,
                                         ISourceContext context)
                                  throws java.io.IOException
Throws:
java.io.IOException

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

accept

public java.lang.Object accept(PatternNodeVisitor visitor,
                               java.lang.Object data)
Specified by:
accept in class PatternNode