|
Groovy Documentation | |||||||
FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object groovy.lang.BenchmarkInterceptor
public class BenchmarkInterceptor extends java.lang.Object
Interceptor that registers the timestamp of each method call before and after invocation. The timestamps are stored internally and can be retrieved through the with the
getCalls()and
statistic()API.
def proxy = ProxyMetaClass.getInstance(ArrayList.class) proxy.interceptor = new BenchmarkInterceptor() proxy.use { def list = (0..10000).collect{ it } 4.times { list.size() } 4000.times { list.set(it, it+1) } } proxy.interceptor.statistic()Which produces the following output:
[[size, 4, 0], [set, 4000, 21]]
Field Summary | |
---|---|
protected java.util.Map |
calls
|
Method Summary | |
---|---|
java.lang.Object
|
afterInvoke(java.lang.Object object, java.lang.String methodName, java.lang.Object[] arguments, java.lang.Object result)
|
java.lang.Object
|
beforeInvoke(java.lang.Object object, java.lang.String methodName, java.lang.Object[] arguments)
|
boolean
|
doInvoke()
|
java.util.Map
|
getCalls()
Returns the raw data associated with the current benchmark run. |
void
|
reset()
Resets all the benchmark data on this object. |
java.util.List
|
statistic()
Returns benchmark statistics as a List<Object[]>. |
Methods inherited from class java.lang.Object | |
---|---|
java.lang.Object#wait(long, int), java.lang.Object#wait(long), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll() |
Field Detail |
---|
protected java.util.Map calls
Method Detail |
---|
public java.lang.Object afterInvoke(java.lang.Object object, java.lang.String methodName, java.lang.Object[] arguments, java.lang.Object result)
public java.lang.Object beforeInvoke(java.lang.Object object, java.lang.String methodName, java.lang.Object[] arguments)
public boolean doInvoke()
public java.util.Map getCalls()
public void reset()
public java.util.List statistic()
Groovy Documentation