blob: 65b0c173b64c85fb84dbef8ecc5ff71e9e05b7c9 [file] [log] [blame]
import org.aspectj.lang.*;
aspect GetTiming {
// static final void println(String s){ System.out.println(s); }
// pointcut allExecs(): !within(GetTiming) && cflow(this(com.realm.arch.proxy.PageProxyServlet)) && execution(* *(..));
pointcut allExecs():
// !within(GetTiming)
!withincode(void org.apache.jcs.utils.log.Logger.*(..))
&& !withincode(void org.apache.jcs.utils.log.Logger.*(..))
&& (cflow(this(org.apache.jcs.engine.control.Cache))
// || cflow(this(org.apache.jcs.engine.group.GroupCache))
)
// && !withincode(* *.getValueObj(..))
//
// && execution(* *(..));
&& execution(* *(..));
Object around(): allExecs() {
long start = System.currentTimeMillis();
String s = thisJoinPointStaticPart.getSignature().getName()
+ " in class: "
+ thisJoinPointStaticPart.getSignature().getDeclaringType().getName();
//+ printParameters(thisJoinPoint);
Object result = proceed();
long delta = System.currentTimeMillis() - start;
if (delta >= 0) {
System.out.println(delta+ " ms: "+s);
}
return result;
}
/*
static private void printParameters(JoinPoint jp) {
System.out.println("Arguments: " );
Object[] args = jp.getArgs();
String[] names = ((CodeSignature)jp.getSignature()).getParameterNames();
Class[] types = ((CodeSignature)jp.getSignature()).getParameterTypes();
for (int i = 0; i < args.length; i++) {
System.out.println(" " + i + ". " + names[i] +
" : " + types[i].getName() +
" = " + args[i]);
}
}
*/
}