Re: [T5] Exposing child component parameters : inherit, autoconnect... Nothing better ?

2008-12-23 Thread Francois Armand

Francois Armand wrote:

In my component building, I have a really common pattern which is:

- I have a child component, which has a parameter, like : 

- I have a parent component, in which I use ChildComponent (standard 
component composition), and I want to expose some or all parameters of 
ChildComponent as parameter for ParentComponent.

[...]

Nobody on that subject ? Nobody has a better pattern to expose child 
parameters in parent components ?
Or perhaps that the period of the year isn't well suited for asking 
about computer things other than Christmas gifts :)


--
Francois Armand
Etudes & Développements J2EE
Groupe Linagora - http://www.linagora.com
Tél.: +33 (0)1 58 18 68 28
---
http://fanf42.blogspot.com
InterLDAP - http://interldap.org 
FederID - http://www.federid.org/

Open Source identities management and federation


-
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org



[T5] Exposing child component parameters : inherit, autoconnect... Nothing better ?

2008-12-22 Thread Francois Armand

In my component building, I have a really common pattern which is:

- I have a child component, which has a parameter, like : 

- I have a parent component, in which I use ChildComponent (standard 
component composition), and I want to expose some or all parameters of 
ChildComponent as parameter for ParentComponent.


For now, I believe that there is only two way of dealing with it:
- the ChilParameter parameter may be marked as "autoconnect", and so  
if  ParentComponent has a parameter named ChildParameter, the binding is 
done for me ;
- the ChilParameter parameter is not marked as "autoconnect". So in my 
ParentComponent, I can have a parameter named ParentParameter, and use 
inherit as bindind for the ChildParameter:

@Parameter private ParentParameter pp;
@Component(parameters={"ChilParameter=inherit:ParentParameter"}) private 
ChildComponent cc;


That seems not good, because in each case, I have to declare in the 
parent all the exposed parameter (and for the autoconnect, I have to be 
able to modify the child component, what ease not always possible if it 
is in the core lib, or in a third party one). So, if I want to expose a 
lot of parameter from child in parent, I have a lot of copy/paste to do, 
and this kind of stuff is really error and refactoring prone.


I also understand that it is unwanted to expose child parameters without 
warning, so what I need is an "expose" parameter for the Component 
annotation that takes a list of properties names and make the 
"@Paramater private ParentParameter / 
"ChilParameter=inherit:ParentParameter"})" for me.


Is there already somethink like that in T5, or do I have to copy/paste 
parameters ?


--
Francois Armand
Etudes & Développements J2EE
Groupe Linagora - http://www.linagora.com
Tél.: +33 (0)1 58 18 68 28
---
http://fanf42.blogspot.com
InterLDAP - http://interldap.org 
FederID - http://www.federid.org/

Open Source identities management and federation


-
To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
For additional commands, e-mail: users-h...@tapestry.apache.org