Trinidad tree/treeTable expand all handling
-------------------------------------------
Key: TRINIDAD-1037
URL: https://issues.apache.org/jira/browse/TRINIDAD-1037
Project: MyFaces Trinidad
Issue Type: Improvement
Affects Versions: 1.2.7-core
Environment: All
Reporter: Kamran Kashanian
Fix For: 1.2.7-core
Attachments: trunk_1.2.x.patch
The Trinidad tree/treeTable components include logic to protect against an
unbounded "expand all" action. The expand all action can be expensive for large
trees.
The method
org.apache.myfaces.trinidad.component.HierarchyUtils.__handleBroadcast() checks
for a RowDisclosure event, and tries to determine the # of expanded nodes by
looping over the newly expanded row keys. However, looping over the RowKeySet,
which is bound to the tree model, can be expensive. Instead, the method should
call getSize() on the expanded row key set, and loop only if an unknown size
(size = -1) is returned.
Providing a patch for this.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.