Package org.aspectj.weaver
Class Advice
- java.lang.Object
-
- org.aspectj.weaver.ShadowMunger
-
- org.aspectj.weaver.Advice
-
- All Implemented Interfaces:
PartialOrder.PartialComparable,IHasPosition
public abstract class Advice extends ShadowMunger
-
-
Field Summary
Fields Modifier and Type Field Description protected AjAttribute.AdviceAttributeattributeprotected UnresolvedType[]bindingParameterTypesprotected ResolvedTypeconcreteAspectstatic intConstantReferencestatic intConstantValueprotected TypePatternexceptionTypestatic intExtraArgumentprotected booleanhasMatchedAtLeastOnceprotected List<ShadowMunger>innerCflowEntriesprotected AdviceKindkindISourceLocationlastReportedMonitorExitJoinpointLocationprotected intnFreeVarsstatic intParameterMaskprotected Membersignatureprotected List<Lint.Kind>suppressedLintKindsstatic intThisAspectInstancestatic intThisEnclosingJoinPointStaticPartstatic intThisJoinPointstatic intThisJoinPointStaticPart-
Fields inherited from class org.aspectj.weaver.ShadowMunger
end, handle, NONE, pointcut, ShadowMungerAdvice, ShadowMungerDeow, sourceContext, start
-
-
Constructor Summary
Constructors Constructor Description Advice(AjAttribute.AdviceAttribute attribute, Pointcut pointcut, Member signature)
-
Method Summary
-
Methods inherited from class org.aspectj.weaver.ShadowMunger
bindsProceedingJoinPoint, fallbackCompareTo, getBinarySourceLocation, getDeclaringType, getEnd, getSourceLocation, getStart, getThrownExceptions, implementOn, isBinary, mustCheckExceptions, parameterizeWith, setDeclaringType, setPointcut, specializeOn, write
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.aspectj.util.PartialOrder.PartialComparable
compareTo
-
-
-
-
Field Detail
-
attribute
protected AjAttribute.AdviceAttribute attribute
-
kind
protected transient AdviceKind kind
-
signature
protected Member signature
-
concreteAspect
protected ResolvedType concreteAspect
-
innerCflowEntries
protected List<ShadowMunger> innerCflowEntries
-
nFreeVars
protected int nFreeVars
-
exceptionType
protected TypePattern exceptionType
-
bindingParameterTypes
protected UnresolvedType[] bindingParameterTypes
-
hasMatchedAtLeastOnce
protected boolean hasMatchedAtLeastOnce
-
lastReportedMonitorExitJoinpointLocation
public ISourceLocation lastReportedMonitorExitJoinpointLocation
-
ExtraArgument
public static final int ExtraArgument
- See Also:
- Constant Field Values
-
ThisJoinPoint
public static final int ThisJoinPoint
- See Also:
- Constant Field Values
-
ThisJoinPointStaticPart
public static final int ThisJoinPointStaticPart
- See Also:
- Constant Field Values
-
ThisEnclosingJoinPointStaticPart
public static final int ThisEnclosingJoinPointStaticPart
- See Also:
- Constant Field Values
-
ParameterMask
public static final int ParameterMask
- See Also:
- Constant Field Values
-
ConstantReference
public static final int ConstantReference
- See Also:
- Constant Field Values
-
ConstantValue
public static final int ConstantValue
- See Also:
- Constant Field Values
-
ThisAspectInstance
public static final int ThisAspectInstance
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Advice
public Advice(AjAttribute.AdviceAttribute attribute, Pointcut pointcut, Member signature)
-
-
Method Detail
-
makeCflowEntry
public static Advice makeCflowEntry(World world, Pointcut entry, boolean isBelow, Member stackField, int nFreeVars, List<ShadowMunger> innerCflowEntries, ResolvedType inAspect)
-
makePerCflowEntry
public static Advice makePerCflowEntry(World world, Pointcut entry, boolean isBelow, Member stackField, ResolvedType inAspect, List<ShadowMunger> innerCflowEntries)
-
makePerObjectEntry
public static Advice makePerObjectEntry(World world, Pointcut entry, boolean isThis, ResolvedType inAspect)
-
makePerTypeWithinEntry
public static Advice makePerTypeWithinEntry(World world, Pointcut p, ResolvedType inAspect)
-
isAroundAdvice
public boolean isAroundAdvice()
- Overrides:
isAroundAdvicein classShadowMunger
-
makeSoftener
public static Advice makeSoftener(World world, Pointcut entry, TypePattern exceptionType, ResolvedType inAspect, IHasSourceLocation loc)
-
match
public boolean match(Shadow shadow, World world)
- Overrides:
matchin classShadowMunger
-
getKind
public AdviceKind getKind()
-
getSignature
public Member getSignature()
-
hasExtraParameter
public boolean hasExtraParameter()
-
getExtraParameterFlags
protected int getExtraParameterFlags()
-
getExtraParameterCount
protected int getExtraParameterCount()
-
getBindingParameterTypes
public UnresolvedType[] getBindingParameterTypes()
-
setBindingParameterTypes
public void setBindingParameterTypes(UnresolvedType[] types)
-
countOnes
public static int countOnes(int bits)
-
getBaseParameterCount
public int getBaseParameterCount()
-
getExtraParameterType
public UnresolvedType getExtraParameterType()
-
getDeclaringAspect
public UnresolvedType getDeclaringAspect()
-
getOriginalSignature
protected Member getOriginalSignature()
-
extraParametersToString
protected String extraParametersToString()
-
getPointcut
public Pointcut getPointcut()
- Overrides:
getPointcutin classShadowMunger
-
concretize
public ShadowMunger concretize(ResolvedType fromType, World world, PerClause clause)
- Specified by:
concretizein classShadowMunger
-
setLexicalPosition
public void setLexicalPosition(int lexicalPosition)
-
isAnnotationStyle
public boolean isAnnotationStyle()
-
getConcreteAspect
public ResolvedType getConcreteAspect()
- Specified by:
getConcreteAspectin classShadowMunger
-
hasMatchedSomething
public boolean hasMatchedSomething()
-
setHasMatchedSomething
public void setHasMatchedSomething(boolean hasMatchedSomething)
-
hasDynamicTests
public abstract boolean hasDynamicTests()
-
-