Author: antelder
Date: Wed Nov 24 12:09:26 2010
New Revision: 1038579

URL: http://svn.apache.org/viewvc?rev=1038579&view=rev
Log:
Add a binding.local which is the parts of the current sca binding for doing 
local only invocations. This is part of a peice of work to restructure the sca 
binding into separately configurable and pluggable pieces in order to give more 
flexibility in sca binding invocations

Added:
    tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/
      - copied from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBinding.java
   (with props)
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBindingInvoker.java
      - copied, changed from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/SCABindingInvoker.java
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBindingProviderFactory.java
      - copied, changed from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/RuntimeSCABindingProviderFactory.java
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalReferenceBindingProvider.java
      - copied, changed from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/RuntimeSCAReferenceBindingProvider.java
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalServiceBindingProvider.java
      - copied, changed from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/RuntimeSCAServiceBindingProvider.java
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/LocalBindingTestCase.java
      - copied, changed from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/test/java/org/apace/tuscany/sca/binding/sca/SCABindingTestCase.java
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/ReadTestCase.java
      - copied, changed from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/test/java/org/apace/tuscany/sca/binding/sca/xml/ReadTestCase.java
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/WriteTestCase.java
      - copied, changed from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/test/java/org/apace/tuscany/sca/binding/sca/xml/WriteTestCase.java
Removed:
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.binding.sca.provider.SCABindingMapper
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.xml.Definitions
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/resources/org/apache/tuscany/sca/binding/sca/
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/sca/SCABindingTestCase.java
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/sca/xml/
Modified:
    tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/pom.xml
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.BindingProviderFactory
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/resources/Calculator.composite
    
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/resources/CalculatorServiceImpl.componentType

Modified: tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/pom.xml
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/pom.xml?rev=1038579&r1=1038531&r2=1038579&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/pom.xml (original)
+++ tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/pom.xml Wed Nov 24 
12:09:26 2010
@@ -27,46 +27,24 @@
         <relativePath>../pom.xml</relativePath>
     </parent>
 
-    <artifactId>tuscany-binding-sca-runtime</artifactId>
-    <name>Apache Tuscany SCA Binding SCA Model</name>
+    <artifactId>tuscany-binding-local-runtime</artifactId>
+    <name>Apache Tuscany SCA Binding Local Runtime</name>
 
     <dependencies>
       
          <dependency>
             <groupId>org.apache.tuscany.sca</groupId>
-            <artifactId>tuscany-assembly</artifactId>
-            <version>2.0-SNAPSHOT</version>
-        </dependency>  
-        
-         <dependency>
-            <groupId>org.apache.tuscany.sca</groupId>
-            <artifactId>tuscany-assembly-xml</artifactId>
-            <version>2.0-SNAPSHOT</version>
-        </dependency>    
-        
-        <dependency>
-            <groupId>org.apache.tuscany.sca</groupId>
-            <artifactId>tuscany-core-spi</artifactId>
-            <version>2.0-SNAPSHOT</version>
-        </dependency> 
-        
-         <dependency>
-            <groupId>org.apache.tuscany.sca</groupId>
             <artifactId>tuscany-core</artifactId>
             <version>2.0-SNAPSHOT</version>
+            <scope>provided</scope>
         </dependency>       
 
          <dependency>
             <groupId>org.apache.tuscany.sca</groupId>
             <artifactId>tuscany-databinding</artifactId>
             <version>2.0-SNAPSHOT</version>
-        </dependency>       
-        
-         <dependency>
-            <groupId>org.apache.tuscany.sca</groupId>
-            <artifactId>tuscany-contribution</artifactId>
-            <version>2.0-SNAPSHOT</version>
-        </dependency>    
+            <scope>provided</scope>
+        </dependency>
+               
     </dependencies>
-
 </project>

Added: 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBinding.java
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBinding.java?rev=1038579&view=auto
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBinding.java
 (added)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBinding.java
 Wed Nov 24 12:09:26 2010
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.    
+ */
+
+package org.apache.tuscany.sca.binding.local;
+
+import javax.xml.namespace.QName;
+
+import org.apache.tuscany.sca.assembly.impl.BindingImpl;
+
+public class LocalBinding extends BindingImpl {
+
+    public static final QName TYPE = new QName(SCA11_TUSCANY_NS, 
"binding.local");
+
+    public LocalBinding() {
+        super(TYPE);
+    }
+}

Propchange: 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBinding.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBinding.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Copied: 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBindingInvoker.java
 (from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/SCABindingInvoker.java)
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBindingInvoker.java?p2=tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBindingInvoker.java&p1=tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/SCABindingInvoker.java&r1=1038531&r2=1038579&rev=1038579&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/SCABindingInvoker.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBindingInvoker.java
 Wed Nov 24 12:09:26 2010
@@ -17,7 +17,7 @@
  * under the License.    
  */
 
-package org.apache.tuscany.sca.binding.sca.provider;
+package org.apache.tuscany.sca.binding.local;
 
 import org.apache.tuscany.sca.databinding.Mediator;
 import org.apache.tuscany.sca.interfacedef.Operation;
@@ -30,28 +30,26 @@ import org.apache.tuscany.sca.runtime.Ru
 import org.apache.tuscany.sca.runtime.RuntimeEndpointReference;
 
 /**
- * @version $Rev$ $Date$
+ * The Local binding invoker
  */
-public class SCABindingInvoker implements Interceptor {
+public class LocalBindingInvoker implements Interceptor {
     private InvocationChain chain;
     private Mediator mediator;
     private Operation sourceOperation;
     private Operation targetOperation;
     private boolean passByValue;
-    private RuntimeEndpointReference epr;
     private RuntimeEndpoint ep;
 
     /**
      * Construct a SCABindingInvoker that delegates to the service invocaiton 
chain
      */
-    public SCABindingInvoker(InvocationChain chain, Operation sourceOperation, 
Mediator mediator, boolean passByValue, RuntimeEndpointReference epr) {
+    public LocalBindingInvoker(InvocationChain chain, Operation 
sourceOperation, Mediator mediator, boolean passByValue, 
RuntimeEndpointReference epr) {
         super();
         this.chain = chain;
         this.mediator = mediator;
         this.sourceOperation = sourceOperation;
         this.targetOperation = chain.getTargetOperation();
         this.passByValue = passByValue;
-        this.epr = epr;
         this.ep = (RuntimeEndpoint)epr.getTargetEndpoint();
     }
 

Copied: 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBindingProviderFactory.java
 (from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/RuntimeSCABindingProviderFactory.java)
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBindingProviderFactory.java?p2=tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBindingProviderFactory.java&p1=tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/RuntimeSCABindingProviderFactory.java&r1=1038531&r2=1038579&rev=1038579&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/RuntimeSCABindingProviderFactory.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalBindingProviderFactory.java
 Wed Nov 24 12:09:26 2010
@@ -17,9 +17,8 @@
  * under the License.    
  */
 
-package org.apache.tuscany.sca.binding.sca.provider;
+package org.apache.tuscany.sca.binding.local;
 
-import org.apache.tuscany.sca.assembly.SCABinding;
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
 import org.apache.tuscany.sca.provider.BindingProviderFactory;
 import org.apache.tuscany.sca.provider.ReferenceBindingProvider;
@@ -28,29 +27,25 @@ import org.apache.tuscany.sca.runtime.Ru
 import org.apache.tuscany.sca.runtime.RuntimeEndpointReference;
 
 /**
- * The factory for creating SCA Binding providers
- * 
- * @version $Rev$ $Date$
+ * The factory for creating Local Binding providers
  */
-public class RuntimeSCABindingProviderFactory implements 
BindingProviderFactory<SCABinding> {
+public class LocalBindingProviderFactory implements 
BindingProviderFactory<LocalBinding> {
     
     private ExtensionPointRegistry extensionPoints;
     
-    public RuntimeSCABindingProviderFactory(ExtensionPointRegistry 
extensionPoints) {
+    public LocalBindingProviderFactory(ExtensionPointRegistry extensionPoints) 
{
         this.extensionPoints = extensionPoints;
-     
     } 
     
     public ReferenceBindingProvider 
createReferenceBindingProvider(RuntimeEndpointReference endpointReference) {
-              
-        return  new RuntimeSCAReferenceBindingProvider(extensionPoints, 
endpointReference);
+        return  new LocalReferenceBindingProvider(extensionPoints, 
endpointReference);
     }
 
     public ServiceBindingProvider createServiceBindingProvider(RuntimeEndpoint 
endpoint) {
-        return new RuntimeSCAServiceBindingProvider(extensionPoints, endpoint);
+        return new LocalServiceBindingProvider(extensionPoints, endpoint);
     }
 
-    public Class<SCABinding> getModelType() {
-        return SCABinding.class;
+    public Class<LocalBinding> getModelType() {
+        return LocalBinding.class;
     }
 }

Copied: 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalReferenceBindingProvider.java
 (from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/RuntimeSCAReferenceBindingProvider.java)
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalReferenceBindingProvider.java?p2=tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalReferenceBindingProvider.java&p1=tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/RuntimeSCAReferenceBindingProvider.java&r1=1038531&r2=1038579&rev=1038579&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/RuntimeSCAReferenceBindingProvider.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalReferenceBindingProvider.java
 Wed Nov 24 12:09:26 2010
@@ -17,10 +17,9 @@
  * under the License.
  */
 
-package org.apache.tuscany.sca.binding.sca.provider;
+package org.apache.tuscany.sca.binding.local;
 
 import org.apache.tuscany.sca.assembly.Endpoint;
-import org.apache.tuscany.sca.assembly.SCABinding;
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
 import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.databinding.Mediator;
@@ -31,100 +30,49 @@ import org.apache.tuscany.sca.interfaced
 import org.apache.tuscany.sca.invocation.InvocationChain;
 import org.apache.tuscany.sca.invocation.Invoker;
 import org.apache.tuscany.sca.provider.EndpointReferenceProvider;
-import org.apache.tuscany.sca.provider.ReferenceBindingProvider;
 import org.apache.tuscany.sca.runtime.RuntimeComponent;
 import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
 import org.apache.tuscany.sca.runtime.RuntimeComponentService;
 import org.apache.tuscany.sca.runtime.RuntimeEndpoint;
 import org.apache.tuscany.sca.runtime.RuntimeEndpointReference;
-import org.oasisopen.sca.ServiceRuntimeException;
 import org.oasisopen.sca.ServiceUnavailableException;
 
 /**
- * The sca reference binding provider mediates between the twin requirements of
- * local sca bindings and remote sca bindings. In the local case is does
- * very little. When the sca binding model is set as being remote (because a
- * reference target can't be resolved in the current model) this binding will
- * try and create a remote connection to it
- *
- * @version $Rev$ $Date$
+ * The Local binding reference binding provider
  */
-public class RuntimeSCAReferenceBindingProvider implements 
EndpointReferenceProvider {
+public class LocalReferenceBindingProvider implements 
EndpointReferenceProvider {
 
     private RuntimeEndpointReference endpointReference;
     private RuntimeComponent component;
     private RuntimeComponentReference reference;
-    private SCABinding binding;
-    private boolean remotable;
-    private boolean started = false;
+    private LocalBinding binding;
 
-    private ReferenceBindingProvider distributedProvider;
     private Mediator mediator;
     private InterfaceContractMapper interfaceContractMapper;
-    private SCABindingMapper scaBindingMapper;
 
-    public RuntimeSCAReferenceBindingProvider(ExtensionPointRegistry 
extensionPoints,
-                                              RuntimeEndpointReference 
endpointReference) {
+    public LocalReferenceBindingProvider(ExtensionPointRegistry 
extensionPoints, RuntimeEndpointReference endpointReference) {
         this.endpointReference = endpointReference;
         this.component = (RuntimeComponent)endpointReference.getComponent();
         this.reference = 
(RuntimeComponentReference)endpointReference.getReference();
-        this.binding = (SCABinding)endpointReference.getBinding();
+        this.binding = (LocalBinding)endpointReference.getBinding();
 
         UtilityExtensionPoint utilities = 
extensionPoints.getExtensionPoint(UtilityExtensionPoint.class);
         this.mediator = utilities.getUtility(Mediator.class);
         this.interfaceContractMapper = 
utilities.getUtility(InterfaceContractMapper.class);
-        this.scaBindingMapper = utilities.getUtility(SCABindingMapper.class);
-        remotable = isTargetRemote();
-        getDistributedProvider();
-    }
-
-    private boolean isTargetRemote() {
-        return endpointReference.getTargetEndpoint().isRemote();
-    }
-
-    private ReferenceBindingProvider getDistributedProvider() {
-
-        if (remotable) {
-            // initialize the remote provider if it hasn't been done already
-            if (distributedProvider == null) {
-                if (reference.getInterfaceContract() != null && 
!reference.getInterfaceContract().getInterface()
-                    .isRemotable()) {
-                    throw new ServiceRuntimeException("Reference interface not 
remotable for component: " + component
-                        .getName()
-                        + " and reference: "
-                        + reference.getName());
-                }
-
-                if (scaBindingMapper.isRemotable()) {
-                    distributedProvider =
-                        new 
DelegatingSCAReferenceBindingProvider(endpointReference, scaBindingMapper);
-                }
-            }
-        }
-
-        return distributedProvider;
     }
 
     public InterfaceContract getBindingInterfaceContract() {
-        if (remotable && distributedProvider != null) {
-            return distributedProvider.getBindingInterfaceContract();
+        // Check if there is a target
+        RuntimeEndpoint endpoint = 
(RuntimeEndpoint)endpointReference.getTargetEndpoint();
+        if (endpoint != null) {
+            return endpoint.getComponentTypeServiceInterfaceContract();
         } else {
-            // Check if there is a target
-            RuntimeEndpoint endpoint = 
(RuntimeEndpoint)endpointReference.getTargetEndpoint();
-            if (endpoint != null) {
-                return endpoint.getComponentTypeServiceInterfaceContract();
-            } else {
-                return 
endpointReference.getComponentTypeReferenceInterfaceContract();
-            }
+            return 
endpointReference.getComponentTypeReferenceInterfaceContract();
         }
     }
 
     public boolean supportsOneWayInvocation() {
-        if (remotable && distributedProvider != null) {
-            return distributedProvider.supportsOneWayInvocation();
-        } else {
-            return false;
-        }
+        return false;
     }
 
     private Invoker getInvoker(RuntimeEndpointReference epr, Operation 
operation) {
@@ -141,7 +89,6 @@ public class RuntimeSCAReferenceBindingP
                         passByValue = false;
                     }
                 } else {
-//                    boolean allowsPBR = chain.allowsPassByReference(); TODO: 
TUSCANY-3479 this breaks the conformance tests as it needs to consider _both_ 
ends
                     boolean allowsPBR = false;
                     if (allowsPBR && 
interfaceContractMapper.isCompatibleByReference(operation,
                                                                                
      targetOp,
@@ -154,62 +101,35 @@ public class RuntimeSCAReferenceBindingP
                 // it turns out that the chain source and target operations 
are the same, and are the operation 
                 // from the target, not sure if thats by design or a bug. The 
SCA binding invoker needs to know 
                 // the source and target class loaders so pass in the real 
source operation in the constructor 
-                return chain == null ? null : new SCABindingInvoker(chain, 
operation, mediator, passByValue, epr);
+                return chain == null ? null : new LocalBindingInvoker(chain, 
operation, mediator, passByValue, epr);
             }
         }
         return null;
     }
 
     public Invoker createInvoker(Operation operation) {
-        if (remotable && distributedProvider != null) {
-            return distributedProvider.createInvoker(operation);
-        } else {
-            Invoker invoker = getInvoker(endpointReference, operation);
-            if (invoker == null) {
-                throw new ServiceUnavailableException(
-                                                      "Unable to create SCA 
binding invoker for local target " + component
-                                                          .getName()
-                                                          + " reference "
-                                                          + reference.getName()
-                                                          + " (bindingURI="
-                                                          + binding.getURI()
-                                                          + " operation="
-                                                          + operation.getName()
-                                                          + ")");
-            }
-            return invoker;
+        Invoker invoker = getInvoker(endpointReference, operation);
+        if (invoker == null) {
+            throw new ServiceUnavailableException(
+                                                  "Unable to create SCA 
binding invoker for local target " + component
+                                                      .getName()
+                                                      + " reference "
+                                                      + reference.getName()
+                                                      + " (bindingURI="
+                                                      + binding.getURI()
+                                                      + " operation="
+                                                      + operation.getName()
+                                                      + ")");
         }
+        return invoker;
     }
 
     public void start() {
-        if (started) {
-            return;
-        }
-        if (distributedProvider != null) {
-            distributedProvider.start();
-        }
-        started = true;
     }
 
     public void stop() {
-        if (!started) {
-            return;
-        }
-
-        try {
-            if (distributedProvider != null) {
-                distributedProvider.stop();
-            }
-        } finally {
-            started = false;
-        }
     }
 
     public void configure() {
-        if (distributedProvider instanceof EndpointReferenceProvider) {
-            ((EndpointReferenceProvider)distributedProvider).configure();
-        }
-
     }
-
 }

Copied: 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalServiceBindingProvider.java
 (from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/RuntimeSCAServiceBindingProvider.java)
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalServiceBindingProvider.java?p2=tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalServiceBindingProvider.java&p1=tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/RuntimeSCAServiceBindingProvider.java&r1=1038531&r2=1038579&rev=1038579&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/main/java/org/apache/tuscany/sca/binding/sca/provider/RuntimeSCAServiceBindingProvider.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/java/org/apache/tuscany/sca/binding/local/LocalServiceBindingProvider.java
 Wed Nov 24 12:09:26 2010
@@ -17,85 +17,43 @@
  * under the License.
  */
 
-package org.apache.tuscany.sca.binding.sca.provider;
+package org.apache.tuscany.sca.binding.local;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.interfacedef.InterfaceContract;
 import org.apache.tuscany.sca.provider.ServiceBindingProvider;
 import org.apache.tuscany.sca.runtime.RuntimeComponentService;
 import org.apache.tuscany.sca.runtime.RuntimeEndpoint;
 
 /**
- * The sca service binding provider mediates between the twin requirements of
- * local sca bindings and remote sca bindings. In the local case is does
- * very little. When the sca binding model is set as being remote this binding 
will
- * try and create a remote service endpoint for remote references to connect to
- *
- * @version $Rev$ $Date$
+ * The Local binding service binding provider
  */
-public class RuntimeSCAServiceBindingProvider implements 
ServiceBindingProvider {
+public class LocalServiceBindingProvider implements ServiceBindingProvider {
     private RuntimeEndpoint endpoint;
     private RuntimeComponentService service;
 
-    private ServiceBindingProvider distributedProvider;
-    private SCABindingMapper scaBindingMapper;
-
-    public RuntimeSCAServiceBindingProvider(ExtensionPointRegistry 
extensionPoints, RuntimeEndpoint endpoint) {
+    public LocalServiceBindingProvider(ExtensionPointRegistry extensionPoints, 
RuntimeEndpoint endpoint) {
         this.endpoint = endpoint;
         this.service = (RuntimeComponentService)endpoint.getService();
-        UtilityExtensionPoint utilities = 
extensionPoints.getExtensionPoint(UtilityExtensionPoint.class);
-        this.scaBindingMapper = utilities.getUtility(SCABindingMapper.class);
 
         // if there is potentially a wire to this service that crosses the 
node boundary
         // then we need to create a remote endpoint 
         if (service.getInterfaceContract().getInterface().isRemotable()) {
-
-            if (scaBindingMapper.isRemotable()) {
-                distributedProvider = new 
DelegatingSCAServiceBindingProvider(endpoint, scaBindingMapper);
-            }
-        }
-    }
-
-    /*
-    protected boolean isDistributed(ExtensionPointRegistry extensionPoints, 
Endpoint endpoint) {
-        // find if the node config is for distributed endpoints
-        // TODO: temp, need a much better way to do this
-        DomainRegistryFactory domainRegistryFactory = 
ExtensibleDomainRegistryFactory.getInstance(extensionPoints);
-        Collection<EndpointRegistry> eprs = 
domainRegistryFactory.getEndpointRegistries();
-        if (eprs.size() > 0) {
-            String eprName = eprs.iterator().next().getClass().getName();
-            return 
!eprName.equals("org.apache.tuscany.sca.core.assembly.impl.EndpointRegistryImpl");
+            // TODO: should this throw some exception now for the local 
binding case?
         }
-        return false;
     }
-    */
 
     public InterfaceContract getBindingInterfaceContract() {
-        if (distributedProvider != null) {
-            return distributedProvider.getBindingInterfaceContract();
-        } else {
-            return endpoint.getComponentTypeServiceInterfaceContract();
-        }
+        return endpoint.getComponentTypeServiceInterfaceContract();
     }
 
     public boolean supportsOneWayInvocation() {
-        if (distributedProvider != null) {
-            return distributedProvider.supportsOneWayInvocation();
-        }
         return false;
     }
 
     public void start() {
-        if (distributedProvider != null) {
-            distributedProvider.start();
-        }
     }
 
     public void stop() {
-        if (distributedProvider != null) {
-            distributedProvider.stop();
-        }
     }
-
 }

Added: 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor?rev=1038579&view=auto
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor
 (added)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor
 Wed Nov 24 12:09:26 2010
@@ -0,0 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+# 
+#   http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License. 
+
+# Implementation class for the artifact processor extension
+org.apache.tuscany.sca.assembly.xml.DefaultBeanModelProcessor;qname=http://tuscany.apache.org/xmlns/sca/1.1#binding.local,model=org.apache.tuscany.sca.binding.local.LocalBinding

Modified: 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.BindingProviderFactory
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.BindingProviderFactory?rev=1038579&r1=1038531&r2=1038579&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.BindingProviderFactory
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.BindingProviderFactory
 Wed Nov 24 12:09:26 2010
@@ -16,5 +16,4 @@
 # under the License. 
 
 # Implementation class for the binding extension
-org.apache.tuscany.sca.binding.sca.provider.RuntimeSCABindingProviderFactory;model=org.apache.tuscany.sca.assembly.SCABinding
-
+org.apache.tuscany.sca.binding.local.LocalBindingProviderFactory;model=org.apache.tuscany.sca.binding.local.LocalBinding

Copied: 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/LocalBindingTestCase.java
 (from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/test/java/org/apace/tuscany/sca/binding/sca/SCABindingTestCase.java)
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/LocalBindingTestCase.java?p2=tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/LocalBindingTestCase.java&p1=tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/test/java/org/apace/tuscany/sca/binding/sca/SCABindingTestCase.java&r1=1038531&r2=1038579&rev=1038579&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/test/java/org/apace/tuscany/sca/binding/sca/SCABindingTestCase.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/LocalBindingTestCase.java
 Wed Nov 24 12:09:26 2010
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apace.tuscany.sca.binding.sca;
+package org.apace.tuscany.sca.binding.local;
 
 import java.io.InputStream;
 
@@ -44,7 +44,7 @@ import org.junit.Test;
  *
  * @version $Rev$ $Date$
  */
-public class SCABindingTestCase {
+public class LocalBindingTestCase {
 
     private XMLInputFactory inputFactory;
     private StAXArtifactProcessor<Object> staxProcessor;

Copied: 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/ReadTestCase.java
 (from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/test/java/org/apace/tuscany/sca/binding/sca/xml/ReadTestCase.java)
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/ReadTestCase.java?p2=tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/ReadTestCase.java&p1=tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/test/java/org/apace/tuscany/sca/binding/sca/xml/ReadTestCase.java&r1=1038531&r2=1038579&rev=1038579&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/test/java/org/apace/tuscany/sca/binding/sca/xml/ReadTestCase.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/ReadTestCase.java
 Wed Nov 24 12:09:26 2010
@@ -17,7 +17,7 @@
  * under the License.    
  */
 
-package org.apace.tuscany.sca.binding.sca.xml;
+package org.apace.tuscany.sca.binding.local;
 
 import static org.junit.Assert.assertNotNull;
 
@@ -28,7 +28,7 @@ import javax.xml.stream.XMLStreamReader;
 
 import org.apache.tuscany.sca.assembly.ComponentType;
 import org.apache.tuscany.sca.assembly.Composite;
-import org.apache.tuscany.sca.assembly.SCABinding;
+import org.apache.tuscany.sca.binding.local.LocalBinding;
 import 
org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor;
 import org.apache.tuscany.sca.contribution.processor.ProcessorContext;
 import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
@@ -67,10 +67,10 @@ public class ReadTestCase {
         ComponentType componentType = 
(ComponentType)staxProcessor.read(reader, context);
         assertNotNull(componentType);
         
-        SCABinding referenceSCABinding = (SCABinding) 
componentType.getReferences().get(0).getBindings().get(0);
+        LocalBinding referenceSCABinding = (LocalBinding) 
componentType.getReferences().get(0).getBindings().get(0);
         assertNotNull(referenceSCABinding);
         
-        SCABinding serviceSCABinding   = (SCABinding) 
componentType.getServices().get(0).getBindings().get(0);
+        LocalBinding serviceSCABinding   = (LocalBinding) 
componentType.getServices().get(0).getBindings().get(0);
         assertNotNull(serviceSCABinding);     
 
         //new PrintUtil(System.out).print(componentType);
@@ -83,8 +83,8 @@ public class ReadTestCase {
         Composite composite = (Composite)staxProcessor.read(reader, context);
         assertNotNull(composite);
 
-        SCABinding referenceSCABinding = (SCABinding) 
composite.getComponents().get(0).getReferences().get(0).getBindings().get(0);
-        SCABinding serviceSCABinding   = (SCABinding) 
composite.getComponents().get(1).getServices().get(0).getBindings().get(0);
+        LocalBinding referenceSCABinding = (LocalBinding) 
composite.getComponents().get(0).getReferences().get(0).getBindings().get(0);
+        LocalBinding serviceSCABinding   = (LocalBinding) 
composite.getComponents().get(1).getServices().get(0).getBindings().get(0);
         
         Assert.assertNotNull(referenceSCABinding);
         Assert.assertNotNull(serviceSCABinding);        

Copied: 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/WriteTestCase.java
 (from r1038531, 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/test/java/org/apace/tuscany/sca/binding/sca/xml/WriteTestCase.java)
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/WriteTestCase.java?p2=tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/WriteTestCase.java&p1=tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/test/java/org/apace/tuscany/sca/binding/sca/xml/WriteTestCase.java&r1=1038531&r2=1038579&rev=1038579&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-sca-runtime/src/test/java/org/apace/tuscany/sca/binding/sca/xml/WriteTestCase.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/java/org/apace/tuscany/sca/binding/local/WriteTestCase.java
 Wed Nov 24 12:09:26 2010
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apace.tuscany.sca.binding.sca.xml;
+package org.apace.tuscany.sca.binding.local;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;

Modified: 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/resources/Calculator.composite
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/resources/Calculator.composite?rev=1038579&r1=1038531&r2=1038579&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/resources/Calculator.composite
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/resources/Calculator.composite
 Wed Nov 24 12:09:26 2010
@@ -18,18 +18,19 @@
  * under the License.    
 -->
 <composite xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200912";
+              xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.1";
         xmlns:calc="http://calc";
         targetNamespace="http://calc";
         name="Calculator">
     <service name="CalculatorService" promote="CalculatorServiceComponent">
         <interface.java interface="calculator.CalculatorService"/>
-        <binding.sca/>
+        <tuscany:binding.local/>
    </service>
 
    <component name="CalculatorServiceComponent">
         <implementation.java class="calculator.CalculatorServiceImpl"/>
         <reference name="addService" target="AddServiceComponent">
-            <binding.sca/>
+            <tuscany:binding.local/>
         </reference>
         <reference name="subtractService" target="SubtractServiceComponent"/>
         <reference name="multiplyService" target="MultiplyServiceComponent"/>
@@ -40,7 +41,7 @@
     <implementation.java class="calculator.AddServiceImpl"/>
     <service name="AddService">
         <interface.java interface="calculator.AddService"/>
-            <binding.sca/>
+            <tuscany:binding.local/>
     </service>        
     </component>
 

Modified: 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/resources/CalculatorServiceImpl.componentType
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/resources/CalculatorServiceImpl.componentType?rev=1038579&r1=1038531&r2=1038579&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/resources/CalculatorServiceImpl.componentType
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-local-runtime/src/test/resources/CalculatorServiceImpl.componentType
 Wed Nov 24 12:09:26 2010
@@ -17,16 +17,17 @@
  * specific language governing permissions and limitations
  * under the License.
 -->
-<componentType xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200912";>
+<componentType xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200912";
+               xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.1"; >
 
   <service name="CalculatorService">
         <interface.java interface="calculator.CalculatorService" />
-        <binding.sca/>
+        <tuscany:binding.local/>
   </service>
 
   <reference name="addService">
         <interface.java interface="calculator.AddService" />
-        <binding.sca/>
+        <tuscany:binding.local/>
   </reference>  
 
 </componentType>              


Reply via email to