[ 
https://issues.apache.org/jira/browse/LABS-251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Simone Gianni resolved LABS-251.
--------------------------------

    Resolution: Fixed

Added the compounding system to a generic interface, and bound it to the root 
HtmlProducer. 

Also added some dumb attach points, SIDEA to SIDED, so that they can be 
retrieved from the template. So added also a mainCompound method on the 
Template to support this inclusion. To do this, had to refactor the Template to 
not work directly on producers but to use some intermediate holders. This is 
something that would happen anyway, to support more flexibility in the 
templating system (like LABS-241), for future cglib based system (LABS-221), 
and probably for better template data caching.

A few issues still exist with current implementation of this new method :
- It permits to retrieve not only SIDEX compounded elements, but any compound 
side element. Still don't know if this is a common use case or can lead to 
errors.
- The search is recursive, which adds a feature but makes it more complicated 
than it should be.
- The elements placed in SIDEX are sent to output anyway after the main content 
if not reclaimed by the Template, which is again a feature but makes it more 
complicated.

Anyway, the scope of the improvement is done, so I'm closing it.

Tests added.

> [web] All producers are compoundable with others
> ------------------------------------------------
>
>                 Key: LABS-251
>                 URL: https://issues.apache.org/jira/browse/LABS-251
>             Project: Labs
>          Issue Type: Improvement
>          Components: Magma
>    Affects Versions: Current
>            Reporter: Simone Gianni
>            Assignee: Simone Gianni
>             Fix For: Current
>
>
> This will remove the need for a CompoundProducer and make a lot of things 
> easier.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to