diff options
author | acolyer <acolyer> | 2005-11-29 20:42:48 +0000 |
---|---|---|
committer | acolyer <acolyer> | 2005-11-29 20:42:48 +0000 |
commit | 7384fe71aacd462c94b1e4e73e961dbeba7a19fe (patch) | |
tree | 5ae8fed75ebc7b95f6b10dc2e92777b83de2a6e4 | |
parent | d1a295c3205f87277ed9ae5b3dd70ca50e3a806e (diff) | |
download | aspectj-7384fe71aacd462c94b1e4e73e961dbeba7a19fe.tar.gz aspectj-7384fe71aacd462c94b1e4e73e961dbeba7a19fe.zip |
updates to advice annotations to allow specification (and generation) of parameter names if needed
5 files changed, 49 insertions, 0 deletions
diff --git a/aspectj5rt/java5-src/org/aspectj/lang/annotation/After.java b/aspectj5rt/java5-src/org/aspectj/lang/annotation/After.java index ae42b542e..286f9c7e5 100644 --- a/aspectj5rt/java5-src/org/aspectj/lang/annotation/After.java +++ b/aspectj5rt/java5-src/org/aspectj/lang/annotation/After.java @@ -29,4 +29,13 @@ public @interface After { * The pointcut expression where to bind the advice */ String value(); + + /** + * When compiling without debug info, or when interpreting pointcuts at runtime, + * the names of any arguments used in the advice declaration are not available. + * Under these circumstances only, it is necessary to provide the arg names in + * the annotation - these MUST duplicate the names used in the annotated method. + * Format is a simple comma-separated list. + */ + String argNames() default ""; } diff --git a/aspectj5rt/java5-src/org/aspectj/lang/annotation/AfterReturning.java b/aspectj5rt/java5-src/org/aspectj/lang/annotation/AfterReturning.java index 0010fcff7..397c48fc6 100644 --- a/aspectj5rt/java5-src/org/aspectj/lang/annotation/AfterReturning.java +++ b/aspectj5rt/java5-src/org/aspectj/lang/annotation/AfterReturning.java @@ -39,4 +39,14 @@ public @interface AfterReturning { * The name of the argument in the advice signature to bind the returned value to */ String returning() default ""; + + /** + * When compiling without debug info, or when interpreting pointcuts at runtime, + * the names of any arguments used in the advice declaration are not available. + * Under these circumstances only, it is necessary to provide the arg names in + * the annotation - these MUST duplicate the names used in the annotated method. + * Format is a simple comma-separated list. + */ + String argNames() default ""; + } diff --git a/aspectj5rt/java5-src/org/aspectj/lang/annotation/AfterThrowing.java b/aspectj5rt/java5-src/org/aspectj/lang/annotation/AfterThrowing.java index 4433fa907..7b4d8212c 100644 --- a/aspectj5rt/java5-src/org/aspectj/lang/annotation/AfterThrowing.java +++ b/aspectj5rt/java5-src/org/aspectj/lang/annotation/AfterThrowing.java @@ -39,4 +39,14 @@ public @interface AfterThrowing { * The name of the argument in the advice signature to bind the thrown exception to */ String throwing() default ""; + + /** + * When compiling without debug info, or when interpreting pointcuts at runtime, + * the names of any arguments used in the advice declaration are not available. + * Under these circumstances only, it is necessary to provide the arg names in + * the annotation - these MUST duplicate the names used in the annotated method. + * Format is a simple comma-separated list. + */ + String argNames() default ""; + } diff --git a/aspectj5rt/java5-src/org/aspectj/lang/annotation/Around.java b/aspectj5rt/java5-src/org/aspectj/lang/annotation/Around.java index df1a20a70..253e865f6 100644 --- a/aspectj5rt/java5-src/org/aspectj/lang/annotation/Around.java +++ b/aspectj5rt/java5-src/org/aspectj/lang/annotation/Around.java @@ -29,4 +29,14 @@ public @interface Around { * The pointcut expression where to bind the advice */ String value(); + + /** + * When compiling without debug info, or when interpreting pointcuts at runtime, + * the names of any arguments used in the advice declaration are not available. + * Under these circumstances only, it is necessary to provide the arg names in + * the annotation - these MUST duplicate the names used in the annotated method. + * Format is a simple comma-separated list. + */ + String argNames() default ""; + } diff --git a/aspectj5rt/java5-src/org/aspectj/lang/annotation/Before.java b/aspectj5rt/java5-src/org/aspectj/lang/annotation/Before.java index ea88da101..fe4b372c1 100644 --- a/aspectj5rt/java5-src/org/aspectj/lang/annotation/Before.java +++ b/aspectj5rt/java5-src/org/aspectj/lang/annotation/Before.java @@ -29,4 +29,14 @@ public @interface Before { * The pointcut expression where to bind the advice */ String value(); + + /** + * When compiling without debug info, or when interpreting pointcuts at runtime, + * the names of any arguments used in the advice declaration are not available. + * Under these circumstances only, it is necessary to provide the arg names in + * the annotation - these MUST duplicate the names used in the annotated method. + * Format is a simple comma-separated list. + */ + String argNames() default ""; + } |