[
https://issues.apache.org/jira/browse/MYFACES-3488?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13222691#comment-13222691
]
Mark Struberg commented on MYFACES-3488:
----------------------------------------
intern can have mem disadvantages.
> [perf] store facelets MARK_CREATED and rendererType at UIComponentBase level
> ----------------------------------------------------------------------------
>
> Key: MYFACES-3488
> URL: https://issues.apache.org/jira/browse/MYFACES-3488
> Project: MyFaces Core
> Issue Type: Improvement
> Components: JSR-314
> Reporter: Leonardo Uribe
> Assignee: Leonardo Uribe
> Fix For: 2.0.13, 2.1.7
>
>
> Inspired on the suggestions done in MYFACES-3470 and MYFACES-3471, I have
> found a solution for both cases.
> MARK_CREATED and rendererType are special properties. Both are more related
> to the real UIComponent instance, which means those properties does not
> change for components inside a table (h:dataTable rowStatePreserved="true").
> In the case of MARK_CREATED, almost all components created by facelets uses
> it, and this is assigned when the view is built. It has only sense to save
> this value when the component needs to be restored fully, but since this is a
> property that does not change once created, it does not have sense to store
> it on the delta.
> In the case of rendererType, the same as MARK_CREATED happens, but by the
> spec, it could be valid to set a ValueExpression for it and it is feasible to
> create a component, call markInitialState() and then call
> setRendererType(...), so this value could be saved on the delta.
> Components that are created without properties (for example h:panelGroup)
> only require these two properties, so storing these values at UIComponentBase
> it is possible to prevent create unnecessary Map.Entry instances.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira