net.sf.seam.perf4j
Class Perf4jProfiledInterceptor

java.lang.Object
  extended by org.jboss.seam.intercept.AbstractInterceptor
      extended by net.sf.seam.perf4j.Perf4jProfiledInterceptor
All Implemented Interfaces:
Serializable, org.jboss.seam.intercept.OptimizedInterceptor

@Interceptor
public class Perf4jProfiledInterceptor
extends org.jboss.seam.intercept.AbstractInterceptor

Perf4j interceptor for Seam. Note: it's required to turn on that interceptor in components.xml core:init -> core:interceptors.

Author:
Marcin ZajÄ…czkowski, 2010-01-17
See Also:
Perf4jProfiled, Serialized Form

Constructor Summary
Perf4jProfiledInterceptor()
           
 
Method Summary
 Object aroundInvoke(org.jboss.seam.intercept.InvocationContext ic)
          Delegates performance logging to specific TimingAspect class for annotated methods.
 boolean isInterceptorEnabled()
          Tells when interceptor is enabled.
protected  SeamTimingAspect newTimingAspect()
          Returns new TimingAspect.
 
Methods inherited from class org.jboss.seam.intercept.AbstractInterceptor
getComponent, setComponent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Perf4jProfiledInterceptor

public Perf4jProfiledInterceptor()
Method Detail

aroundInvoke

@AroundInvoke
public Object aroundInvoke(org.jboss.seam.intercept.InvocationContext ic)
                    throws Exception
Delegates performance logging to specific TimingAspect class for annotated methods.

Parameters:
ic - invocation context
Returns:
method execution return value
Throws:
Exception - exception thrown during excecution

newTimingAspect

protected SeamTimingAspect newTimingAspect()
Returns new TimingAspect. Made mostly for tests.

Returns:
new instance of SeamTimingAspect

isInterceptorEnabled

public boolean isInterceptorEnabled()
Tells when interceptor is enabled. In current implementation interceptor is enabled only for components with any method annotated with Perf4jProfiled. There is not handler to currently called method.

Returns:
true if processing method is annotated with @Perf4jProfiled false for other methods


Copyright © 2010. All Rights Reserved.