Will the unbound properties be "set" as well? (If I have several unused
parameters in a component)

Also, can someone give me an idea of the overhead paid for all the
reflection/introspection going on? I don't have a good grasp on where the
boundary between convenience and performance lies when it requires
reflection.




                                                                                       
                                                       
                    "Howard M.                                                         
                                                       
                    Lewis Ship"          To:     Christian 
Hall/Technology/Equifax@Equifax                                                    
                    <hlship@attbi        cc:     "Tapestry Developer" 
<[EMAIL PROTECTED]>                              
                    .com>                Subject:     Re: [Tapestry-developer] Massive 
change to parameters / bindings                        
                                                                                       
                                                       
                    04/26/2002                                                         
                                                       
                    11:45 AM                                                           
                                                       
                                                                                       
                                                       
                                                                                       
                                                       




>
> Just so I am clear, is this what you are saying?
>
> - For components one builds, each parameter must have a corresponding
> IBinding property

No, that's what were getting away from.  Under the revised scheme, you
would
have a property that matches the name and **type** of the parameter.  The
existence of the IBinding would be hidden from your code (with some
exceptions).

> - If "standard" (non-IBinding) properties are desired, provide such
> properties with same names as parameters, and Tapestry will populate them
> from the IBindings

A yes ... this is to be the standard case.

> - If you want to do something special with the input (examples might be
> useful here), you can just leave out the "standard" properties and
> de-reference the IBinding in renderComponent

Right; if you want more control, implement the parameter as it is done
today, by providing a fooBinding property, not a foo property.  Or, for
less
efficiency, provide no property and invoke getBinding() instead.

> - If you want to provide output to parameters, this is done the same way
it
> is done now (using IBinding).

Yes.  Thinking about the few places in Tapestry where output parameters are
used (Foreach, form elements), the component needs precise control over
when
the output parameter is set ... i.e., set it, then invoke the listener.

>
> Also, you said:
>
> "Rule #1 means all sorts of properties will be set."

That is, render() will invoke setter methods for all bindings that can be
mapped to parameters before invoking renderComponent().  The current system
allows the developer to be more frugal about which bindings are
dereferenced.

>
> Not sure what you meant here...just the properties that map to bindings,
> right?

Basically, each dynamic binding that can map to a JavaBean property of the
component will be set.  Again, the current system allows the developer more
control.

>
> -C
>







_______________________________________________
Tapestry-developer mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/tapestry-developer

Reply via email to