summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorantelder <antelder@13f79535-47bb-0310-9956-ffa450edef68>2011-12-02 12:29:30 +0000
committerantelder <antelder@13f79535-47bb-0310-9956-ffa450edef68>2011-12-02 12:29:30 +0000
commitb54a72a32f5f98ebc4688f298744a97185ceb9db (patch)
treef37bedd4cb6f02b6fa5454a1aeaf977c63cd1693
parent5e202ff7265d5bfe75875f3f47f765859389b90e (diff)
TUSCANY-3974: Apply patch from Greg Dritschler to fix IntentNotSatisfiedAtBuild error occurs when using an intent provided by implementation
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1209441 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentPolicyBuilderImpl.java14
1 files changed, 11 insertions, 3 deletions
diff --git a/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentPolicyBuilderImpl.java b/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentPolicyBuilderImpl.java
index 2b5ec445e3..dab5fb3d5e 100644
--- a/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentPolicyBuilderImpl.java
+++ b/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentPolicyBuilderImpl.java
@@ -554,9 +554,17 @@ public class ComponentPolicyBuilderImpl {
} else {
// The ExtensionType on the subject only has the binding name. The one in the system
// definitions will have the mayProvide/alwaysProvides values
- for ( ExtensionType et : context.getDefinitions().getBindingTypes() ) {
- if ( type.getType().equals(et.getType()) ) {
- type = et;
+ if (type.getType().getLocalPart().startsWith("implementation")) {
+ for ( ExtensionType et : context.getDefinitions().getImplementationTypes() ) {
+ if ( type.getType().equals(et.getType()) ) {
+ type = et;
+ }
+ }
+ } else {
+ for ( ExtensionType et : context.getDefinitions().getBindingTypes() ) {
+ if ( type.getType().equals(et.getType()) ) {
+ type = et;
+ }
}
}