1 package booking.controller.common;
2
3 import java.lang.reflect.Method;
4 import java.util.ArrayList;
5
6 import org.apache.log4j.Logger;
7 import org.springframework.aop.AfterReturningAdvice;
8 import org.springframework.aop.MethodBeforeAdvice;
9
10 public class AopLogger implements MethodBeforeAdvice, AfterReturningAdvice {
11 @SuppressWarnings({ "rawtypes", "unchecked" })
12 public void before(Method method, Object[] args, Object target) throws Throwable {
13 Logger logger = Logger.getLogger(target.getClass());
14
15
16 ArrayList arguments = new ArrayList();
17 for (Object arg : args) {
18 arguments.add((arg != null) ? arg.toString() : null);
19 }
20
21 logger.info(method.getName() + "() - Inicio - Parametros: " + arguments);
22
23 }
24
25 public void afterReturning(Object returnValue, Method method, Object[] args, Object target) throws Throwable {
26
27
28 Logger logger = Logger.getLogger(target.getClass());
29 logger.info(method.getName() + "() - Fin");
30 }
31 }