summaryrefslogtreecommitdiffstats
path: root/sandbox/sebastien/java/dynamic/modules/sca-api/src/main/java/org/oasisopen/sca/annotation/Scope.java
diff options
context:
space:
mode:
authorjsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68>2010-07-19 02:50:53 +0000
committerjsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68>2010-07-19 02:50:53 +0000
commitf59fca36e7538cafbd6032003c7b06d64862a2bf (patch)
treee5b1222e40a7abc8b945195df39ab97c5eb5729c /sandbox/sebastien/java/dynamic/modules/sca-api/src/main/java/org/oasisopen/sca/annotation/Scope.java
parent1a8707aa6ad5e22117a9f17e88322a6ee824aa44 (diff)
Branch to experiment with dynamic component interfaces and implementations.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@965346 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sandbox/sebastien/java/dynamic/modules/sca-api/src/main/java/org/oasisopen/sca/annotation/Scope.java')
-rw-r--r--sandbox/sebastien/java/dynamic/modules/sca-api/src/main/java/org/oasisopen/sca/annotation/Scope.java36
1 files changed, 36 insertions, 0 deletions
diff --git a/sandbox/sebastien/java/dynamic/modules/sca-api/src/main/java/org/oasisopen/sca/annotation/Scope.java b/sandbox/sebastien/java/dynamic/modules/sca-api/src/main/java/org/oasisopen/sca/annotation/Scope.java
new file mode 100644
index 0000000000..087f589168
--- /dev/null
+++ b/sandbox/sebastien/java/dynamic/modules/sca-api/src/main/java/org/oasisopen/sca/annotation/Scope.java
@@ -0,0 +1,36 @@
+/*
+ * Copyright(C) OASIS(R) 2005,2010. All Rights Reserved.
+ * OASIS trademark, IPR and other policies apply.
+ */
+package org.oasisopen.sca.annotation;
+
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+/**
+ * The @Scope annotation MUST only be used on a service's implementation
+ * class. It is an error to use this annotation on an interface.
+ */
+@Target(TYPE)
+@Retention(RUNTIME)
+public @interface Scope {
+
+ /**
+ * The name of the scope.
+ *
+ * For 'STATELESS' implementations, a different implementation
+ * instance can be used to service each request. Implementation
+ * instances can be newly created or be drawn from a pool of instances.
+ *
+ * SCA defines the following scope names, but others can be defined
+ * by particular Java-based implementation types:
+ * STATELESS
+ * COMPOSITE
+ * The default value is STATELESS.
+ *
+ * @return the name of the scope
+ */
+ String value() default "STATELESS";
+}