You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

AfterReturning.java 1.8KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /*******************************************************************************
  2. * Copyright (c) 2005 Contributors.
  3. * All rights reserved.
  4. * This program and the accompanying materials are made available
  5. * under the terms of the Eclipse Public License v1.0
  6. * which accompanies this distribution and is available at
  7. * http://eclipse.org/legal/epl-v10.html
  8. *
  9. * Contributors:
  10. * initial implementation Alexandre Vasseur
  11. *******************************************************************************/
  12. package org.aspectj.lang.annotation;
  13. import java.lang.annotation.Target;
  14. import java.lang.annotation.ElementType;
  15. import java.lang.annotation.Retention;
  16. import java.lang.annotation.RetentionPolicy;
  17. /**
  18. * After returning advice
  19. *
  20. * @author Alexandre Vasseur
  21. */
  22. @Retention(RetentionPolicy.RUNTIME)
  23. @Target(ElementType.METHOD)
  24. public @interface AfterReturning {
  25. /**
  26. * @return the pointcut expression where to bind the advice
  27. */
  28. String value() default "";
  29. /**
  30. * @return the pointcut expression where to bind the advice, overrides "value" when specified
  31. */
  32. String pointcut() default "";
  33. /**
  34. * @return the name of the argument in the advice signature to bind the returned value to
  35. */
  36. String returning() default "";
  37. /**
  38. * When compiling without debug info, or when interpreting pointcuts at runtime,
  39. * the names of any arguments used in the advice declaration are not available.
  40. * Under these circumstances only, it is necessary to provide the arg names in
  41. * the annotation - these MUST duplicate the names used in the annotated method.
  42. * Format is a simple comma-separated list.
  43. * @return the argument names (that should match names used in the annotated method)
  44. */
  45. String argNames() default "";
  46. }