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 }