You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by an...@apache.org on 2010/01/20 12:03:33 UTC

svn commit: r901127 - in /tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl: SCAClientFactoryFinderImpl.java SCAClientFactoryImpl.java SCAClientModuleActivator.java

Author: antelder
Date: Wed Jan 20 11:03:33 2010
New Revision: 901127

URL: http://svn.apache.org/viewvc?rev=901127&view=rev
Log:
Update the tuscany sca client impl to match the latest oasis code

Added:
    tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientFactoryFinderImpl.java
Modified:
    tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientFactoryImpl.java
    tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientModuleActivator.java

Added: tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientFactoryFinderImpl.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientFactoryFinderImpl.java?rev=901127&view=auto
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientFactoryFinderImpl.java (added)
+++ tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientFactoryFinderImpl.java Wed Jan 20 11:03:33 2010
@@ -0,0 +1,49 @@
+/*
+ * Copyright(C) OASIS(R) 2005,2009. All Rights Reserved.
+ * OASIS trademark, IPR and other policies apply.
+ */
+package org.apache.tuscany.sca.client.impl;
+
+import java.net.URI;
+import java.util.Properties;
+
+import org.oasisopen.sca.NoSuchDomainException;
+import org.oasisopen.sca.ServiceRuntimeException;
+import org.oasisopen.sca.client.SCAClientFactory;
+import org.oasisopen.sca.client.SCAClientFactoryFinder;
+
+/**
+ * A Tuscany specific implementation of an SCAClientFactoryFinder which finds
+ * hard codes the use of the Tuscany SCAClientFactory instead of doscovering it.
+ * 
+ * @see SCAClientFactoryFinder
+ * @see SCAClientFactory
+ */
+public class SCAClientFactoryFinderImpl implements SCAClientFactoryFinder {
+
+    /**
+     * Public Constructor
+     */
+    public SCAClientFactoryFinderImpl() {
+    }
+    
+    /**
+     * Creates an instance of the SCAClientFactorySPI implementation. 
+     * This discovers the SCAClientFactorySPI Implementation and instantiates
+     * the provider's implementation.
+     * 
+     * @param properties    Properties that may be used when creating a new 
+     * instance of the SCAClient
+     * @param classLoader   ClassLoader that may be used when creating a new 
+     * instance of the SCAClient
+     * @return new instance of the SCAClientFactory
+     * @throws ServiceRuntimeException Failed to create SCAClientFactory
+     * Implementation.
+     */
+    public SCAClientFactory find(Properties properties,
+                                 ClassLoader classLoader,
+                                 URI domainURI ) throws NoSuchDomainException, ServiceRuntimeException {
+        return new SCAClientFactoryImpl(domainURI);
+    }
+    
+}

Modified: tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientFactoryImpl.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientFactoryImpl.java?rev=901127&r1=901126&r2=901127&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientFactoryImpl.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientFactoryImpl.java Wed Jan 20 11:03:33 2010
@@ -20,7 +20,6 @@
 package org.apache.tuscany.sca.client.impl;
 
 import java.net.URI;
-import java.net.URISyntaxException;
 import java.util.List;
 
 import org.apache.tuscany.sca.node.Node;
@@ -29,23 +28,18 @@
 import org.oasisopen.sca.NoSuchServiceException;
 import org.oasisopen.sca.ServiceUnavailableException;
 import org.oasisopen.sca.client.SCAClientFactory;
+import org.oasisopen.sca.client.SCAClientFactoryFinder;
 
 public class SCAClientFactoryImpl extends SCAClientFactory {
-    
-    // required when a registry is used to create the factory
-    // need to extend to have domain uri configuration
-    public SCAClientFactoryImpl() throws URISyntaxException {
-        super(new URI(Node.DEFAULT_DOMAIN_URI));
-    }
 
-    public SCAClientFactoryImpl(URI domainURI) {
+    public static void setSCAClientFactoryFinder(SCAClientFactoryFinder factoryFinder) {
+        SCAClientFactory.factoryFinder = factoryFinder;
+    }
+    
+    public SCAClientFactoryImpl(URI domainURI) throws NoSuchDomainException {
         super(domainURI);
     }   
     
-    public static void setDefaultClientFactory(SCAClientFactory clientFactory){
-        defaultFactory = clientFactory;
-    }    
-
     @Override
     public <T> T getService(Class<T> serviceInterface, String serviceName) throws NoSuchServiceException, NoSuchDomainException {
         URI domainURI = getDomainURI();

Modified: tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientModuleActivator.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientModuleActivator.java?rev=901127&r1=901126&r2=901127&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientModuleActivator.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/sca-client-impl/src/main/java/org/apache/tuscany/sca/client/impl/SCAClientModuleActivator.java Wed Jan 20 11:03:33 2010
@@ -21,26 +21,14 @@
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
 import org.apache.tuscany.sca.core.ModuleActivator;
-import org.oasisopen.sca.client.SCAClientFactory;
 
 public class SCAClientModuleActivator implements ModuleActivator {
     
-    private ExtensionPointRegistry registry;
-
     public SCAClientModuleActivator(ExtensionPointRegistry registry) {
-        this.registry = registry;
     }
     
     public void start() { 
-        // look up the SCAClientFactory. We could instantiate one directly here but 
-        // looking it up brings the META-INF/services mechanism into play
-        SCAClientFactory clientFactory = registry.getExtensionPoint(SCAClientFactory.class);  
-        
-        // inject this client factory as the default client factory
-        // so that the SCAClientFactory interface doesn't have to use the
-        // finder to look for it.
-        // TODO - handle multiple domains
-        SCAClientFactoryImpl.setDefaultClientFactory(clientFactory);
+        SCAClientFactoryImpl.setSCAClientFactoryFinder(new SCAClientFactoryFinderImpl());
     }
 
     public void stop() {