public static Advice makePerObjectEntry(World world, Pointcut entry, boolean isThis, ResolvedType inAspect) { Advice ret = world.createAdviceMunger(isThis ? AdviceKind.PerThisEntry : AdviceKind.PerTargetEntry, entry, null, 0, entry, inAspect); ret.concreteAspect = inAspect; return ret; }
public static Advice makePerCflowEntry(World world, Pointcut entry, boolean isBelow, Member stackField, ResolvedType inAspect, List<ShadowMunger> innerCflowEntries) { Advice ret = world.createAdviceMunger(isBelow ? AdviceKind.PerCflowBelowEntry : AdviceKind.PerCflowEntry, entry, stackField, 0, entry, inAspect); ret.innerCflowEntries = innerCflowEntries; ret.concreteAspect = inAspect; return ret; }
public static Advice makePerTypeWithinEntry(World world, Pointcut p, ResolvedType inAspect) { Advice ret = world.createAdviceMunger(AdviceKind.PerTypeWithinEntry, p, null, 0, p, inAspect); ret.concreteAspect = inAspect; return ret; }
public static Advice makeSoftener(World world, Pointcut entry, TypePattern exceptionType, ResolvedType inAspect, IHasSourceLocation loc) { Advice ret = world.createAdviceMunger(AdviceKind.Softener, entry, null, 0, loc, inAspect); ret.exceptionType = exceptionType; return ret; }
public static Advice makeCflowEntry(World world, Pointcut entry, boolean isBelow, Member stackField, int nFreeVars, List<ShadowMunger> innerCflowEntries, ResolvedType inAspect) { Advice ret = world.createAdviceMunger(isBelow ? AdviceKind.CflowBelowEntry : AdviceKind.CflowEntry, entry, stackField, 0, entry, inAspect); ret.innerCflowEntries = innerCflowEntries; ret.nFreeVars = nFreeVars; ret.setDeclaringType(inAspect); // correct? return ret; }