1 /**************************************************************************************2 * Copyright (c) Jonas BonŽr, Alexandre Vasseur. All rights reserved. *3 * http://aspectwerkz.codehaus.org *4 * ---------------------------------------------------------------------------------- *5 * The software in this package is published under the terms of the LGPL license *6 * a copy of which has been included with this distribution in the license.txt file. *7 **************************************************************************************/8 package test.reflection;9 10 import org.codehaus.aspectwerkz.definition.Pointcut;11 import org.codehaus.aspectwerkz.definition.Pointcut;12 import org.codehaus.aspectwerkz.joinpoint.JoinPoint;13 14 /**15 * @author <a HREF="mailto:jboner@codehaus.org">Jonas BonŽr </a>16 * @Aspect17 */18 public class TestAspect {19 /**20 * @Expression execution(* test.reflection.*2.*(..))21 */22 Pointcut test1_exclude;23 24 /**25 * @Expression execution(* test.reflection.*.incr(..))26 */27 Pointcut test1;28 29 /**30 * @Expression execution(* test.reflection.*.incrStatic(..))31 */32 Pointcut test1Static;33 34 /**35 * @Expression execution(* test.reflection.Super2.incr(..))36 */37 Pointcut test2;38 39 /**40 * @Expression execution(* test.reflection.Super2.incrStatic(..))41 */42 Pointcut test2Static;43 44 /**45 * @Expression execution(* test.reflection.*.do*(..))46 */47 Pointcut test3;48 49 /**50 * @Around test1 && !test1_exclude51 */52 public Object execute1(final JoinPoint jp) throws Throwable {53 Integer result = (Integer ) jp.proceed();54 return new Integer (-1 * result.intValue());55 }56 57 /**58 * @Around test1Static && !test1_exclude59 */60 public Object execute2(final JoinPoint jp) throws Throwable {61 Integer result = (Integer ) jp.proceed();62 return new Integer (-1 * result.intValue());63 }64 65 /**66 * @Around test267 */68 public Object execute3(final JoinPoint jp) throws Throwable {69 Integer result = (Integer ) jp.proceed();70 return new Integer (-1 * result.intValue());71 }72 73 /**74 * @Around test2Static75 */76 public Object execute4(final JoinPoint jp) throws Throwable {77 Integer result = (Integer ) jp.proceed();78 return new Integer (-1 * result.intValue());79 }80 81 /**82 * @Around test383 */84 public Object execute5(final JoinPoint jp) throws Throwable {85 Integer result = (Integer ) jp.proceed();86 return new Integer (-1 * result.intValue());87 }88 }