diff options
author | edwardsmj <edwardsmj@13f79535-47bb-0310-9956-ffa450edef68> | 2009-10-02 12:57:38 +0000 |
---|---|---|
committer | edwardsmj <edwardsmj@13f79535-47bb-0310-9956-ffa450edef68> | 2009-10-02 12:57:38 +0000 |
commit | acd7c43a39f69cb86c48f3b5262be3c1f5236f13 (patch) | |
tree | 1cfc6b432b2c4393d3a55c482432b3381b94b47b | |
parent | 1086b6f5807bfed9ccec99989f8459e5266d714e (diff) |
Updated @AllowsPassByReference definition to match the latest Java CAA specification as defined in TUSCANY-3293
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@820996 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | java/sca/modules/sca-api/src/main/java/org/oasisopen/sca/annotation/AllowsPassByReference.java | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/java/sca/modules/sca-api/src/main/java/org/oasisopen/sca/annotation/AllowsPassByReference.java b/java/sca/modules/sca-api/src/main/java/org/oasisopen/sca/annotation/AllowsPassByReference.java index dbc08a7655..e005da2414 100644 --- a/java/sca/modules/sca-api/src/main/java/org/oasisopen/sca/annotation/AllowsPassByReference.java +++ b/java/sca/modules/sca-api/src/main/java/org/oasisopen/sca/annotation/AllowsPassByReference.java @@ -7,7 +7,9 @@ */ package org.oasisopen.sca.annotation; +import static java.lang.annotation.ElementType.FIELD; import static java.lang.annotation.ElementType.METHOD; +import static java.lang.annotation.ElementType.PARAMETER; import static java.lang.annotation.ElementType.TYPE; import static java.lang.annotation.RetentionPolicy.RUNTIME; @@ -15,14 +17,19 @@ import java.lang.annotation.Retention; import java.lang.annotation.Target; /** - * Annotation on a method that indicates that its parameters may safely - * be passed by reference. The annotation may also be placed on an interface - * or class to indicate that all declared methods support this optimization. + * Annotation on a service implementation class, on an individual method of a remotable service implementation, + * or on an individual reference which uses a remotable interface, where the reference is a field, a setter method, + * or a constructor parameter method. + * The annotation indicates that that the parameters and return value may safely + * be passed by reference. When the annotation is placed on a service implementation class or on a reference + * it indicates that all declared methods support this optimization. * * @version $Rev$ $Date$ */ -@Target({TYPE, METHOD}) +@Target({TYPE, METHOD, FIELD, PARAMETER}) @Retention(RUNTIME) public @interface AllowsPassByReference { + + boolean value() default true; } |