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 2009/12/06 11:40:57 UTC

svn commit: r887662 - /tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java

Author: antelder
Date: Sun Dec  6 10:40:57 2009
New Revision: 887662

URL: http://svn.apache.org/viewvc?rev=887662&view=rev
Log:
Avoid NPE when sourec interface hasn't yet by introspected

Modified:
    tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java

Modified: tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java?rev=887662&r1=887661&r2=887662&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java Sun Dec  6 10:40:57 2009
@@ -260,6 +260,15 @@
         // TODO - EPR why is this looking at the component types. The endpoint should have the right interface contract by this time
         //InterfaceContract targetContract = getLeafInterfaceContract(endpoint);
 
+        if (sourceContract == null) {
+            // TODO: until the web component introspection is brought up
+            try {
+                sourceContract = (InterfaceContract)targetContract.clone();
+            } catch (CloneNotSupportedException e) {
+                throw new IllegalStateException(e);
+            }
+        }
+        
         RuntimeComponentReference reference = (RuntimeComponentReference)getReference();
         for (Operation operation : sourceContract.getInterface().getOperations()) {
             Operation targetOperation = interfaceContractMapper.map(targetContract.getInterface(), operation);