Hi devs,

I’d like to discuss about how to control transformations and when they are 
executed. Right now we have an all-or-nothing strategy (either the 
transformation is defined in the config property or it’s not).

We have some needs to be able to turn on/turn off some transformations on a 
page level basis.

Here’s the idea that I put on https://jira.xwiki.org/browse/XWIKI-15100:

* Add a new xproperty to Rendering.RenderingConfigClass
* Modify java code: XWikiRenderingConfiguration, 
ExtendedRenderingConfiguration, DefaultExtendedRenderingConfiguration, 
RenderingConfigClassDocumentConfigurationSource
* For the wiki level, get the config in Rendering.RenderingConfig
* For the page level, get the config from an xobject of type 
Rendering.RenderingConfigClass
* Make RenderingConfiguration.getTransformationNames() search in the current 
page, parent pages (spaces), current wiki, and fallback to xwiki.properties

Note that, as Thomas pointed out in comment of 
https://jira.xwiki.org/browse/XWIKI-15100 the last point is the hard one. We 
could imagine having a transformation cache that would be loaded at startup and 
updated whenever a XWiki.RenderingConfigClass xobject is modified in the wiki. 
Very similar to wiki components.

Note: We could also implement https://jira.xwiki.org/browse/XWIKI-13167 at the 
same time, with the query string in the URL overriding the transformations.

WDYT?

Any idea of the cost of adding such a feature in term of days? Does 7 days 
sounds good to you? (inluding testing and doc).

Thanks
-Vincent

Reply via email to