summaryrefslogtreecommitdiffstats
path: root/tags/java/sca/2.0-M3-RC4/modules/sca-api/src/main/java/org/oasisopen/sca/client/SCAClient.java
diff options
context:
space:
mode:
Diffstat (limited to 'tags/java/sca/2.0-M3-RC4/modules/sca-api/src/main/java/org/oasisopen/sca/client/SCAClient.java')
-rw-r--r--tags/java/sca/2.0-M3-RC4/modules/sca-api/src/main/java/org/oasisopen/sca/client/SCAClient.java41
1 files changed, 41 insertions, 0 deletions
diff --git a/tags/java/sca/2.0-M3-RC4/modules/sca-api/src/main/java/org/oasisopen/sca/client/SCAClient.java b/tags/java/sca/2.0-M3-RC4/modules/sca-api/src/main/java/org/oasisopen/sca/client/SCAClient.java
new file mode 100644
index 0000000000..c054179d8a
--- /dev/null
+++ b/tags/java/sca/2.0-M3-RC4/modules/sca-api/src/main/java/org/oasisopen/sca/client/SCAClient.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright(C) OASIS(R) 2005,2009. All Rights Reserved. 2299
+ * OASIS trademark, IPR and other policies apply. 2300
+ */
+package org.oasisopen.sca.client;
+
+import java.net.URI;
+import org.oasisopen.sca.NoSuchDomainException;
+import org.oasisopen.sca.NoSuchServiceException;
+
+/**
+ * Client side interface that can be used to lookup SCA Services within a SCA
+ * Domain.
+ * <p>
+ * The SCAClientFactory is used to obtain an implementation instance of the
+ * SCAClient.
+ *
+ * @see SCAClientFactory
+ * @author OASIS Open
+ */
+public interface SCAClient {
+
+ /**
+ * Returns a reference proxy that implements the business interface <T> of a
+ * service in a domain
+ *
+ * @param serviceURI the relative URI of the target service. Takes the form
+ * componentName/serviceName. Can also take the extended form
+ * componentName/serviceName/bindingName to use a specific
+ * binding of the target service
+ * @param domainURI the URI of an SCA Domain.
+ * @param interfaze The business interface class of the service in the
+ * domain
+ * @param <T> The business interface class of the service in the domain
+ * @return a proxy to the target service, in the specified SCA Domain that
+ * implements the business interface <B>.
+ * @throws NoSuchServiceException Service requested was not found
+ * @throws NoSuchDomainException Domain requested was not found
+ */
+ <T> T getService(Class<T> interfaze, String serviceURI, URI domainURI) throws NoSuchServiceException, NoSuchDomainException;
+}