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.

Reply via email to