Author: bdaniel
Date: Mon Jul 19 18:34:04 2010
New Revision: 965578

URL: http://svn.apache.org/viewvc?rev=965578&view=rev
Log:
Inherit elements lower in the hierarchy first to ensure inheritance of mutually 
exclusive intents is handled correctly

Modified:
    
tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositePolicyBuilderImpl.java

Modified: 
tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositePolicyBuilderImpl.java
URL: 
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositePolicyBuilderImpl.java?rev=965578&r1=965577&r2=965578&view=diff
==============================================================================
--- 
tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositePolicyBuilderImpl.java
 (original)
+++ 
tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositePolicyBuilderImpl.java
 Mon Jul 19 18:34:04 2010
@@ -108,11 +108,13 @@ public class CompositePolicyBuilderImpl 
                                     inherit(ep, Intent.Type.interaction, true, 
componentService.getInterfaceContract().getInterface());
                                 }
                                 
-                                // Inherit from composite/component/service
-                                inherit(ep, Intent.Type.interaction, true, 
composite, ep.getComponent(), ep.getService());
-                                
                                 // Inherit from binding
                                 inherit(ep, Intent.Type.interaction, true, 
ep.getBinding());
+                                
+                                // Inherit from composite/component/service
+                                inherit(ep, Intent.Type.interaction, true, 
ep.getService(), ep.getComponent(), composite );
+                                
+
 
                                 // Replace profile intents with their required 
intents
                                 // Replace unqualified intents if there is a 
qualified intent in the list
@@ -160,13 +162,15 @@ public class CompositePolicyBuilderImpl 
                                 if (componentReference.getInterfaceContract() 
!= null) {
                                     inherit(epr, Intent.Type.interaction, 
true, componentReference.getInterfaceContract().getInterface());
                                 }
-
-                                // Inherit from composite/component/reference
-                                inherit(epr, Intent.Type.interaction, true, 
composite, epr.getComponent(), epr.getReference());
                                 
                                 // Inherit from binding
                                 inherit(epr, Intent.Type.interaction, true, 
epr.getBinding());
 
+                                // Inherit from composite/component/reference
+                                inherit(epr, Intent.Type.interaction, true,  
epr.getReference(), epr.getComponent(),  composite);
+                                
+                              
+
                                 // Replace profile intents with their required 
intents
                                 // Replace unqualified intents if there is a 
qualified intent in the list
                                 // Replace qualifiable intents with the 
default qualified intent


Reply via email to