summaryrefslogtreecommitdiffstats
path: root/java/sca/modules/endpoint/src/main
diff options
context:
space:
mode:
authorslaws <slaws@13f79535-47bb-0310-9956-ffa450edef68>2009-06-19 15:54:54 +0000
committerslaws <slaws@13f79535-47bb-0310-9956-ffa450edef68>2009-06-19 15:54:54 +0000
commitc1feaec0db0ef74488bda2d64513e1b7b2e8ab34 (patch)
treef94952adaaff9cadb223e37336708397e26d6aef /java/sca/modules/endpoint/src/main
parent00c1157e3e8b3202c91b32feb13cd4ba92b5811a (diff)
TUSCANY-3092 - bring up remote version of binding.sca and include it in the build
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@786563 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/sca/modules/endpoint/src/main')
-rw-r--r--java/sca/modules/endpoint/src/main/java/org/apache/tuscany/sca/endpoint/impl/EndpointReferenceBuilderImpl.java20
1 files changed, 16 insertions, 4 deletions
diff --git a/java/sca/modules/endpoint/src/main/java/org/apache/tuscany/sca/endpoint/impl/EndpointReferenceBuilderImpl.java b/java/sca/modules/endpoint/src/main/java/org/apache/tuscany/sca/endpoint/impl/EndpointReferenceBuilderImpl.java
index ccb70b6a21..d4a9f31497 100644
--- a/java/sca/modules/endpoint/src/main/java/org/apache/tuscany/sca/endpoint/impl/EndpointReferenceBuilderImpl.java
+++ b/java/sca/modules/endpoint/src/main/java/org/apache/tuscany/sca/endpoint/impl/EndpointReferenceBuilderImpl.java
@@ -175,7 +175,18 @@ public class EndpointReferenceBuilderImpl implements CompositeBuilder, EndpointR
} else {
if (endpoint.isUnresolved() == false){
// Wired - service resolved - binding matched
- // The service is in the same composite
+ // The service is in the same composite or the
+ // binding is remote and has a full URI
+
+ // still need to check that the callback endpoint is set correctly
+ if ((endpointReference.getCallbackEndpoint() != null) &&
+ (endpointReference.getCallbackEndpoint().isUnresolved() == false)){
+ return;
+ }
+
+ matchCallbackBinding(endpointReference,
+ monitor);
+
return;
}
@@ -359,9 +370,10 @@ public class EndpointReferenceBuilderImpl implements CompositeBuilder, EndpointR
List<Endpoint> matchedEndpoint = new ArrayList<Endpoint>();
// Find the corresponding bindings from callback service side
- if ((callbackEndpointReferences.get(0).getReference().getBindings().size() == 0) ||
- ((callbackEndpointReferences.get(0).getReference().getBindings().size() == 1) &&
- (callbackEndpointReferences.get(0).getReference().getBindings().get(0) instanceof SCABinding))){
+ if ((callbackEndpointReferences.size() ==0) ||
+ (callbackEndpointReferences.get(0).getReference().getBindings().size() == 0) ||
+ ((callbackEndpointReferences.get(0).getReference().getBindings().size() == 1) &&
+ (callbackEndpointReferences.get(0).getReference().getBindings().get(0) instanceof SCABinding))){
// OAISIS - choose a binding from the service side
// (could have been specified as part of the target string)
// last part of this test that is looking for binding SCA is