Hi,

I had to make such changes to fix the property source calculation.

Taking an example,

<composite name="Composite1">
   <component name="C1">
       <implementation.composite name="ns1:Composite11"/>
       <property name="p2" value="1"/>
   </component>

   <component name="C2">
       <implementation.composite name="ns1:Composite11"/>
       <property name="p2" value="2"/>
   </component>

</composite>

<composite name="Composite11" ...>
   <property name="p2" value="11"/>
   <component name="C11">
       <...>
       <property name="p1" source="$p2"/>
   </component>
</composite>

In the componentType for Composite11, the property value is set to 11. Both component C1 and C2 have the same componentType, but they configure the property p2 to different values. I understand that the component property inherit its value from the componentType but I don't think we should push the component property value into the componentType.

Thanks,
Raymond
--------------------------------------------------
From: "Simon Laws" <[email protected]>
Sent: Monday, October 05, 2009 7:09 AM
To: <[email protected]>
Subject: Re: svn commit: r820460 - in /tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl: ComponentBuilderImpl.java CompositeComponentTypeBuilderImpl.java ModelBuilderImpl.java

Hi Raymond

Why was it necessary to pass in the outer component? The property
values are pushed down into the outer component's component type, if
appropriate, when the component properties are reconciled with those
of its component type. Hence they are available in the parent
composite. Have I missed something else?

Regards

Simon

Reply via email to