summaryrefslogtreecommitdiffstats
path: root/tags/java/sca/2.0-M3-RC3a/modules/sca-api/src/main/java/org/oasisopen/sca/CallableReference.java
diff options
context:
space:
mode:
authorantelder <antelder@13f79535-47bb-0310-9956-ffa450edef68>2009-07-12 08:48:30 +0000
committerantelder <antelder@13f79535-47bb-0310-9956-ffa450edef68>2009-07-12 08:48:30 +0000
commit4d683f7dc5f9a9f49852a994f6fbb04f56a514cd (patch)
tree40c857b0f10766ca926f8c6483387055aadbda09 /tags/java/sca/2.0-M3-RC3a/modules/sca-api/src/main/java/org/oasisopen/sca/CallableReference.java
parent06c5a47c354808fe5280c0332a9975aee22c7872 (diff)
Create a test tag for RC3 with the fix from r790470
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@793293 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'tags/java/sca/2.0-M3-RC3a/modules/sca-api/src/main/java/org/oasisopen/sca/CallableReference.java')
-rw-r--r--tags/java/sca/2.0-M3-RC3a/modules/sca-api/src/main/java/org/oasisopen/sca/CallableReference.java54
1 files changed, 54 insertions, 0 deletions
diff --git a/tags/java/sca/2.0-M3-RC3a/modules/sca-api/src/main/java/org/oasisopen/sca/CallableReference.java b/tags/java/sca/2.0-M3-RC3a/modules/sca-api/src/main/java/org/oasisopen/sca/CallableReference.java
new file mode 100644
index 0000000000..cdfaded693
--- /dev/null
+++ b/tags/java/sca/2.0-M3-RC3a/modules/sca-api/src/main/java/org/oasisopen/sca/CallableReference.java
@@ -0,0 +1,54 @@
+/*
+ * (c) Copyright BEA Systems, Inc., Cape Clear Software, International Business Machines Corp, Interface21, IONA Technologies,
+ * Oracle, Primeton Technologies, Progress Software, Red Hat, Rogue Wave Software, SAP AG., Siemens AG., Software AG., Sybase
+ * Inc., TIBCO Software Inc., 2005, 2007. All rights reserved.
+ *
+ * see http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
+ */
+package org.oasisopen.sca;
+
+/**
+ * Common superclass for references that can be passed between components.
+ *
+ * @version $Rev$ $Date$
+ * @param <B> the Java interface associated with this reference
+ */
+public interface CallableReference<B> {
+ /**
+ * Returns a type-safe reference to the target of this reference.
+ * The instance returned is guaranteed to implement the business interface for this reference
+ * but may not be a proxy as defined by java.lang.reflect.Proxy.
+ *
+ * @return a proxy to the target that implements the business interface associated with this reference
+ */
+ B getService();
+
+ /**
+ * Returns the Java class for the business interface associated with this reference.
+ *
+ * @return the Class for the business interface associated with this reference
+ */
+ Class<B> getBusinessInterface();
+
+ /**
+ * Returns true if this reference is conversational.
+ *
+ * @return true if this reference is conversational
+ */
+ boolean isConversational();
+
+ /**
+ * Returns the conversation associated with this reference.
+ * Returns null if no conversation is currently active.
+ *
+ * @return the conversation associated with this reference; may be null
+ */
+ Conversation getConversation();
+
+ /**
+ * Returns the callback ID.
+ *
+ * @return the callback ID
+ */
+ Object getCallbackID();
+}