I'll try to take a look at it tonight.

Robert

On Oct 24, 2011, at 10/249:31 AM , Dragan Sahpaski wrote:

> I have submitted a patch for https://issues.apache.org/jira/browse/TAP5-1663
> .
> 
> The patch contains integration tests and is quite short so I would be happy
> if someone applies it or at least reviews it if something is
> not quite right.
> 
> Here is the description given with the patch:
> 
> This patch is rather small (entire patch file is 253 lines long), and
> contains integration tests.
> 
> Patch Summary:
> Files changed 4:
> 1. BindParameterWorker: Here is the main logic for inspecting published
> parameters. Also the Exception text is changed to contain info that formal
> and published parameters are searched.
> 2. BindParameterDemo.java
> 3. BindParameterDemo.tml - Added publish1 component with EchoValueWithId
> mixin.
> 4. CoreBehaviorsTests.java
>   - public void bindparameter() - added few assertions for detecting if the
> published value is there. It is the same concept as the EchoValue mixins
>   - public void bindparameter_nomatchingparameter() - changed asserted
> value of the exception text.
> 
> Files added 1:
> 1. EchoValueWithId mixin in integration/app1: Same as EchoValue mixin
> except it does take id as a parameter and doesn't use the container's
> clientId. This is needed because it is applied to a Publish1 component that
> is not a clientElement.
> 
> Public API changes: none
> Internal API changes: none
> 
> Performance issues:
> - BindParameterWorker has a recursive search (iterative implementation) for
> published parameters in embeddedComponents. I think this is better than
> changing public and internal interfaces to contain metadata for published
> parameters etc.
> A alternative implementation would be to put this metadata in
> ComponentModel, something like isPublishedParameter or
> getPublishedParameters. I think this is not necessary especially because no
> one has issued a need for it.
> 
> Cheers,
> Dragan Sahpaski
> 
> 
> 
> On Wed, Oct 5, 2011 at 7:41 AM, Dragan Sahpaski
> <dragan.sahpa...@gmail.com>wrote:
> 
>> Hi,
>> Yes here is the JIRA https://issues.apache.org/jira/browse/TAP5-1663
>> 
>> Cheers
>> 
>> 
>> On Wed, Oct 5, 2011 at 5:29 AM, Steve Eynon <
>> steve.ey...@alienfactory.co.uk> wrote:
>> 
>>> Hi,
>>> 
>>> I've just run into this myself, my Mixin attaches to a Grid and needs
>>> the rowIndex parameter from the embedded GridRows component.
>>> 
>>> Is there a JIRA number for this so I can track the changes and perhaps
>>> patch T5.2.6?
>>> 
>>> Steve.
>>> 
>>> 
>>> On 23 September 2011 20:58, Taha Hafeez Siddiqi
>>> <tawus.tapes...@gmail.com> wrote:
>>>> Hi Dragan
>>>> 
>>>> It definitely deserves a JIRA!
>>>> 
>>>> regards
>>>> Taha
>>>> 
>>>> On Sep 23, 2011, at 6:13 PM, Dragan Sahpaski wrote:
>>>> 
>>>>> Hi,
>>>>> Currently the @BindParameter annotation (that binds a parameter of a
>>> mixin
>>>>> to a parameter in the component the mixin is applied to),
>>>>> can be applied only to formal parameters of the containing component
>>> and not
>>>>> to parameters that are inherited by the containing component by
>>> embedded
>>>>> components.
>>>>> I think it is natural that inherited parameters are included in the
>>> search
>>>>> for parameters to bind to with the @BindParameter annotation.
>>>>> Here is a motivating example:
>>>>> 
>>>>> public class MyComponent{
>>>>> @Component(parameters =
>>>>> "blankOption=inherit:blankOption", publishParameters="blankOption")
>>>>> private Select select;
>>>>> }
>>>>> 
>>>>> public class MyMixin{
>>>>> @BindParameter
>>>>> private BlankOption blankOption;
>>>>> }
>>>>> 
>>>>> And we get:
>>>>> 
>>>>> org.apache.tapestry5.ioc.util.UnknownValueException
>>>>> Containing component MyComponent does not contain a formal parameter
>>>>> matching any of (blank), blankOption.
>>>>> 
>>>>> I'll be grateful if someone supports this and than I would be happy to
>>>>> create a JIRA and possibly a patch for it.
>>>>> 
>>>>> Cheers,
>>>>> Dragan Sahpaski
>>>> 
>>>> 
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>>>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>>> 
>>>> 
>>> 
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
>>> For additional commands, e-mail: users-h...@tapestry.apache.org
>>> 
>>> 
>> 


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

Reply via email to