package testing; class ToRefineAspect { hook ToRefine { ToRefine(method(..args)) { execution(method); } around() { System.out.println("dorefine:"); int i = doRefine(thisJoinPoint.getFullName()); System.out.println("dorefine2:"); doRefine2(); return proceed(); } public refinable int doRefine(String t) { return 0; } public refinable void doRefine2() { thisJoinPoint.getName(); } isApplicable() { doRefine2(); return true; } public void executeThis() {} } }