View Javadoc

1   /*
2    * EL4J, the Extension Library for the J2EE, adds incremental enhancements to
3    * the spring framework, http://el4j.sf.net
4    * Copyright (C) 2010 by ELCA Informatique SA, Av. de la Harpe 22-24,
5    * 1000 Lausanne, Switzerland, http://www.elca.ch
6    *
7    * EL4J is published under the GNU Lesser General Public License (LGPL)
8    * Version 2.1. See http://www.gnu.org/licenses/
9    *
10   * This program is distributed in the hope that it will be useful,
11   * but WITHOUT ANY WARRANTY; without even the implied warranty of
12   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13   * GNU Lesser General Public License for more details.
14   *
15   * For alternative licensing, please contact info@elca.ch
16   */
17  package ch.elca.el4j.tests.aspects.interceptor;
18  
19  import org.aopalliance.intercept.MethodInvocation;
20  import org.apache.commons.logging.Log;
21  import org.aspectj.lang.ProceedingJoinPoint;
22  import org.springframework.aop.interceptor.AbstractTraceInterceptor;
23  
24  import ch.elca.el4j.tests.aspects.util.InvocationMonitor;
25  
26  /**
27   * Logging interceptor for services.
28   *
29   * @svnLink $Revision: 4253 $;$Date: 2010-12-21 11:08:04 +0100 (Di, 21. Dez 2010) $;$Author: swismer $;$URL: https://el4j.svn.sourceforge.net/svnroot/el4j/branches/el4j_3_1/el4j/framework/tests/aspects/src/main/java/ch/elca/el4j/tests/aspects/interceptor/ServiceLoggerInterceptor.java $
30   *
31   * @author Martin Zeltner (MZE)
32   * @author Reynald Borer (RBR)
33   */
34  public class ServiceLoggerInterceptor extends AbstractTraceInterceptor {
35  	/**
36  	 * Generated serial version uid.
37  	 */
38  	private static final long serialVersionUID = -2635477201989637313L;
39  
40  	/**
41  	 * Is the invoked interception method.
42  	 * 
43  	 * @param pjp Is the interception point to proceed further.
44  	 * @return Returns the result of the proceeded method.
45  	 * @throws Throwable In case of an error.
46  	 */
47  	protected Object test(ProceedingJoinPoint pjp) throws Throwable {
48  		InvocationMonitor.incrementCounter(ServiceLoggerInterceptor.class);
49  		Object result = pjp.proceed();
50  		return result;
51  	}
52  
53  	/**
54  	 * {@inheritDoc}
55  	 */
56  	@Override
57  	protected Object invokeUnderTrace(MethodInvocation invocation, Log logger) throws Throwable {
58  		return null;
59  	}
60  }