[JAVASERVERFACES_SPEC_PUBLIC-1003] Specify that fast iteration (with indices) is possible Created: 19/May/11  Updated: 01/Aug/14

Status: Open
Project: javaserverfaces-spec-public
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Minor
Reporter: Martin Kočí Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Performance related problem:

Both Mojarra and MyFaces use iterator() for iteration over children. That is very slow if view is big and contains thousands of components.

Specify:
1) Specify : UIComponent.getChildren() is type of java.util.RandomAccess
2) Specify new UIComponent.getFacets(): List (java.util.RandomAccess) for fast iteration over facets

1) is very easy because mojarra and myfaces use ArrayList for children (so does trinidad)

I think this is not implementation detail, because custom renderkits must know that fast iteration is possible

See:
https://issues.apache.org/jira/browse/MYFACES-3130
http://www.mail-archive.com/dev@myfaces.apache.org/msg52979.html



 Comments   
Comment by Jakob Korherr [ 19/May/11 ]

As I followed the discussion on MYFACES-3130, I have to say that this is a valueable "change" (actually it is not really a change, just a hint).

So +1 on including this info in the spec from my side!

Comment by Ed Burns [ 01/Aug/14 ]

Set priority to baseline ahead of JSF 2.3 triage. Priorities will be assigned accurately after this exercise.

Comment by Manfred Riem [ 01/Aug/14 ]

Setting priority to Minor

Generated at Mon May 25 00:19:00 UTC 2015 using JIRA 6.2.3#6260-sha1:63ef1d6dac3f4f4d7db4c1effd405ba38ccdc558.