Author: slaws
Date: Tue Jul 13 15:17:41 2010
New Revision: 963756

URL: http://svn.apache.org/viewvc?rev=963756&view=rev
Log:
Fixes to set the callback interface based on the interface constructed when the 
@Callback WSDL annotations is processed. Makes BWS_2022 work.  

Modified:
    
tuscany/sca-java-2.x/trunk/modules/binding-ws/src/main/java/org/apache/tuscany/sca/binding/ws/xml/WebServiceBindingProcessor.java
    
tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointImpl.java
    
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/binding-ws/src/main/java/org/apache/tuscany/sca/binding/ws/xml/WebServiceBindingProcessor.java
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-ws/src/main/java/org/apache/tuscany/sca/binding/ws/xml/WebServiceBindingProcessor.java?rev=963756&r1=963755&r2=963756&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/binding-ws/src/main/java/org/apache/tuscany/sca/binding/ws/xml/WebServiceBindingProcessor.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/binding-ws/src/main/java/org/apache/tuscany/sca/binding/ws/xml/WebServiceBindingProcessor.java
 Tue Jul 13 15:17:41 2010
@@ -434,6 +434,7 @@ public class WebServiceBindingProcessor 
                        warning(monitor, "InvalidInterfaceException", 
wsdlFactory, model.getName(), e.getMessage()); 
                 }
                 interfaceContract.setInterface(wsdlInterface);
+                
interfaceContract.setCallbackInterface(wsdlInterface.getCallbackInterface());
                 model.setBindingInterfaceContract(interfaceContract);
             }
             

Modified: 
tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointImpl.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/RuntimeEndpointImpl.java?rev=963756&r1=963755&r2=963756&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointImpl.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointImpl.java
 Tue Jul 13 15:17:41 2010
@@ -482,19 +482,22 @@ public class RuntimeEndpointImpl extends
 
         if ((serviceContract != null) &&
             (bindingContract != null)){
+           
+            boolean bindingHasCallback = 
bindingContract.getCallbackInterface() != null;
+            
             try {
                 if ((serviceContract.getClass() != bindingContract.getClass()) 
&&
                     (serviceContract instanceof JavaInterfaceContract)) {
                         
interfaceContractMapper.checkCompatibility(getGeneratedWSDLContract(serviceContract),
 
                                                                    
bindingContract, 
                                                                    
Compatibility.SUBSET, 
-                                                                   true, // we 
ignore callbacks as binding iface won't have one 
+                                                                   
!bindingHasCallback, // ignore callbacks if binding doesn't have one 
                                                                    false);
                     } else {
                         
interfaceContractMapper.checkCompatibility(serviceContract, 
                                                                    
bindingContract, 
                                                                    
Compatibility.SUBSET, 
-                                                                   true, // we 
ignore callbacks as binding iface won't have one
+                                                                   
!bindingHasCallback, // ignore callbacks if binding doesn't have one 
                                                                    false);     
              
                     }                 
             } catch (Exception ex){

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=963756&r1=963755&r2=963756&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
 Tue Jul 13 15:17:41 2010
@@ -325,6 +325,8 @@ public class RuntimeEndpointReferenceImp
         
        if ((referenceContract != null) &&
            (bindingContract != null)){
+           
+           boolean bindingHasCallback = bindingContract.getCallbackInterface() 
!= null;
 
            try {
                
@@ -333,13 +335,13 @@ public class RuntimeEndpointReferenceImp
                    
interfaceContractMapper.checkCompatibility(getGeneratedWSDLContract(referenceContract),
 
                                                               bindingContract, 
                                                               
Compatibility.SUBSET, 
-                                                              true, // we 
ignore callbacks as binding iface won't have one 
+                                                              
!bindingHasCallback, // ignore callbacks if binding doesn't have one 
                                                               false);
                } else {
                    
interfaceContractMapper.checkCompatibility(referenceContract, 
                                                               bindingContract, 
                                                               
Compatibility.SUBSET, 
-                                                              true, // we 
ignore callbacks as binding iface won't have one 
+                                                              
!bindingHasCallback, // ignore callbacks if binding doesn't have one 
                                                               false);          
         
                }  
 


Reply via email to