[
https://issues.apache.org/jira/browse/OFBIZ-11456?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17150795#comment-17150795 ]
Jacques Le Roux commented on OFBIZ-11456:
-----------------------------------------
Thanks Daniel, PR#213 is in. I let open since there is more work to do here. I suggest to create subtasks to not have too much comments here only.
> MacroFormRenderer refactoring
> -----------------------------
>
> Key: OFBIZ-11456
> URL:
https://issues.apache.org/jira/browse/OFBIZ-11456> Project: OFBiz
> Issue Type: Improvement
> Components: framework/widget
> Affects Versions: Trunk
> Reporter: Daniel Watford
> Assignee: Daniel Watford
> Priority: Minor
>
> Class MacroFormRender is 3400 lines long and performs the following:
> * Renders the various form structure parts and field widgets to FTL macros calls.
> * Configures the FTL environment.
> * Executes the FTL macro calls to generate HTML and write it to a caller provided Appendable.
> Implementing the above means that MacroFormRenderer does not meet the Single Responsibility Principle. The current implementation of multiple responsibilities makes unit testing difficult.
> As discussed on the dev mailing listÂ
https://markmail.org/message/adtkk6cb6o7mmy7f it is proposed that MacroFormRenderer is refactored.
> Refactoring should separate the rendering of form structure parts and field widgets to FTL macro calls from the execution of those macros.
> To support the refactoring effort JMockit is being introduced (OFBIZ-4035) to allow test creation against the current implementation of MacroFormRenderer, helping to ensure functionality is preserved once refactoring is complete.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)