You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ma...@apache.org on 2011/06/08 21:19:52 UTC
svn commit: r1133517 - in /myfaces/core/trunk:
api/src/main/java/javax/faces/component/
api/src/main/java/javax/faces/render/
impl/src/main/java/org/apache/myfaces/application/
impl/src/main/java/org/apache/myfaces/context/servlet/
impl/src/main/java/o...
Author: martinkoci
Date: Wed Jun 8 19:19:52 2011
New Revision: 1133517
URL: http://svn.apache.org/viewvc?rev=1133517&view=rev
Log:
MYFACES-3130 [PERF] Avoid unnecessary AbstractList$Itr instances
Modified:
myfaces/core/trunk/api/src/main/java/javax/faces/component/UIComponentBase.java
myfaces/core/trunk/api/src/main/java/javax/faces/render/Renderer.java
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/TreeStructureManager.java
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/context/servlet/PartialViewContextImpl.java
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/ErrorPageWriter.java
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/util/DebugUtils.java
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/DefaultFaceletsStateManagementStrategy.java
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/component/RepeatRenderer.java
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/component/UIRepeat.java
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ComponentSupport.java
myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/DebugPhaseListener.java
Modified: myfaces/core/trunk/api/src/main/java/javax/faces/component/UIComponentBase.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/api/src/main/java/javax/faces/component/UIComponentBase.java?rev=1133517&r1=1133516&r2=1133517&view=diff
==============================================================================
--- myfaces/core/trunk/api/src/main/java/javax/faces/component/UIComponentBase.java (original)
+++ myfaces/core/trunk/api/src/main/java/javax/faces/component/UIComponentBase.java Wed Jun 8 19:19:52 2011
@@ -248,8 +248,9 @@ public abstract class UIComponentBase ex
if (component.getChildCount() > 0)
{
- for (UIComponent child : component.getChildren())
+ for (int i = 0, childCount = component.getChildCount(); i < childCount; i++)
{
+ UIComponent child = component.getChildren().get(i);
_publishPreRemoveFromViewEvent(context, child);
}
}
@@ -475,8 +476,9 @@ public abstract class UIComponentBase ex
// component and call UIComponent.encodeAll(javax.faces.context.FacesContext).
if (getChildCount() > 0)
{
- for (UIComponent child : getChildren())
+ for (int i = 0, childCount = getChildCount(); i < childCount; i++)
{
+ UIComponent child = getChildren().get(i);
child.encodeAll(context);
}
}
@@ -1362,8 +1364,9 @@ public abstract class UIComponentBase ex
// To improve speed and robustness, the facets and children processing is splited to maintain the
// facet --> state coherence based on the facet's name
- for (UIComponent child : getChildren())
+ for (int i = 0; i < childCount; i++)
{
+ UIComponent child = getChildren().get(i);
if (!child.isTransient())
{
if (childrenList == null)
@@ -1448,8 +1451,9 @@ public abstract class UIComponentBase ex
// To improve speed and robustness, the facets and children processing is splited to maintain the
// facet --> state coherence based on the facet's name
int idx = 0;
- for (UIComponent child : getChildren())
+ for (int i = 0, childCount = getChildCount(); i < childCount; i++)
{
+ UIComponent child = getChildren().get(i);
if (!child.isTransient())
{
Object childState = childrenList.get(idx++);
Modified: myfaces/core/trunk/api/src/main/java/javax/faces/render/Renderer.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/api/src/main/java/javax/faces/render/Renderer.java?rev=1133517&r1=1133516&r2=1133517&view=diff
==============================================================================
--- myfaces/core/trunk/api/src/main/java/javax/faces/render/Renderer.java (original)
+++ myfaces/core/trunk/api/src/main/java/javax/faces/render/Renderer.java Wed Jun 8 19:19:52 2011
@@ -70,8 +70,9 @@ public abstract class Renderer
if (component.getChildCount() > 0)
{
- for (UIComponent child : component.getChildren())
+ for (int i = 0, childCount = component.getChildCount(); i < childCount; i++)
{
+ UIComponent child = component.getChildren().get(i);
if (!child.isRendered())
{
continue;
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/TreeStructureManager.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/TreeStructureManager.java?rev=1133517&r1=1133516&r2=1133517&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/TreeStructureManager.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/application/TreeStructureManager.java Wed Jun 8 19:19:52 2011
@@ -56,8 +56,9 @@ public class TreeStructureManager
if (component.getChildCount() > 0)
{
List<TreeStructComponent> structChildList = new ArrayList<TreeStructComponent>();
- for (UIComponent child : component.getChildren())
+ for (int i = 0, childCount = component.getChildCount(); i < childCount; i++)
{
+ UIComponent child = component.getChildren().get(i);
if (!child.isTransient())
{
TreeStructComponent structChild = internalBuildTreeStructureToSave(child);
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/context/servlet/PartialViewContextImpl.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/context/servlet/PartialViewContextImpl.java?rev=1133517&r1=1133516&r2=1133517&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/context/servlet/PartialViewContextImpl.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/context/servlet/PartialViewContextImpl.java Wed Jun 8 19:19:52 2011
@@ -486,8 +486,9 @@ public class PartialViewContextImpl exte
//comp.encodeAll (_facesContext);
//}
//}
- for (UIComponent comp : viewRoot.getChildren())
+ for (int i = 0, childCount = viewRoot.getChildCount(); i < childCount; i++)
{
+ UIComponent comp = viewRoot.getChildren().get(i);
comp.encodeAll (_facesContext);
}
writer.endUpdate();
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/ErrorPageWriter.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/ErrorPageWriter.java?rev=1133517&r1=1133516&r2=1133517&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/ErrorPageWriter.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/renderkit/ErrorPageWriter.java Wed Jun 8 19:19:52 2011
@@ -678,8 +678,9 @@ public final class ErrorPageWriter
}
if (c.getChildCount() > 0)
{
- for (UIComponent child : c.getChildren())
+ for (int i = 0, childCount = c.getChildCount(); i < childCount; i++)
{
+ UIComponent child = c.getChildren().get(i);
writer.write("<dd>");
_writeComponent(faces, writer, child, highlightId);
writer.write("</dd>");
@@ -974,8 +975,9 @@ public final class ErrorPageWriter
private static boolean _isFirstUIColumn(UIComponent uidata, UIColumn uicolumn)
{
- for (UIComponent child : uidata.getChildren())
+ for (int i = 0, childCount = uidata.getChildCount(); i < childCount; i++)
{
+ UIComponent child = uidata.getChildren().get(i);
if (child instanceof UIColumn)
{
return (child == uicolumn);
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/util/DebugUtils.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/util/DebugUtils.java?rev=1133517&r1=1133516&r2=1133517&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/util/DebugUtils.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/util/DebugUtils.java Wed Jun 8 19:19:52 2011
@@ -310,8 +310,9 @@ public class DebugUtils
if (childCount > 0)
{
- for (UIComponent child : comp.getChildren())
+ for (int i = 0; i < childCount; i++)
{
+ UIComponent child = comp.getChildren().get(i);
printComponent(child, stream, indent + 1, true, null);
}
}
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/DefaultFaceletsStateManagementStrategy.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/DefaultFaceletsStateManagementStrategy.java?rev=1133517&r1=1133516&r2=1133517&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/DefaultFaceletsStateManagementStrategy.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/DefaultFaceletsStateManagementStrategy.java Wed Jun 8 19:19:52 2011
@@ -746,8 +746,9 @@ public class DefaultFaceletsStateManagem
c.clearInitialState();
if (c.getChildCount() > 0)
{
- for (UIComponent child : c.getChildren())
+ for (int i = 0, childCount = c.getChildCount(); i < childCount; i++)
{
+ UIComponent child = c.getChildren().get(i);
ensureClearInitialState(child);
}
}
@@ -947,8 +948,9 @@ public class DefaultFaceletsStateManagem
if (component.getChildCount() > 0)
{
List<TreeStructComponent> structChildList = new ArrayList<TreeStructComponent>();
- for (UIComponent child : component.getChildren())
+ for (int i = 0, childCount = component.getChildCount(); i < childCount; i++)
{
+ UIComponent child = component.getChildren().get(i);
if (!child.isTransient())
{
TreeStructComponent structChild = internalBuildTreeStructureToSave(child);
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java?rev=1133517&r1=1133516&r2=1133517&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/FaceletViewDeclarationLanguage.java Wed Jun 8 19:19:52 2011
@@ -538,8 +538,9 @@ public class FaceletViewDeclarationLangu
if (component.getChildCount() > 0)
{
- for (UIComponent child : component.getChildren())
+ for (int j = 0, childCount = component.getChildCount(); j < childCount; j++)
{
+ UIComponent child = component.getChildren().get(j);
_publishPreRemoveFromViewEvent(context, child);
}
}
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/component/RepeatRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/component/RepeatRenderer.java?rev=1133517&r1=1133516&r2=1133517&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/component/RepeatRenderer.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/component/RepeatRenderer.java Wed Jun 8 19:19:52 2011
@@ -72,8 +72,9 @@ public class RepeatRenderer extends Rend
}
}
- for (UIComponent child : component.getChildren())
+ for (int i = 0, childCount = component.getChildCount(); i < childCount; i++)
{
+ UIComponent child = component.getChildren().get(i);
child.encodeAll(context);
}
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/component/UIRepeat.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/component/UIRepeat.java?rev=1133517&r1=1133516&r2=1133517&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/component/UIRepeat.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/component/UIRepeat.java Wed Jun 8 19:19:52 2011
@@ -399,8 +399,9 @@ public class UIRepeat extends UIComponen
if (getChildCount() > 0)
{
FacesContext context = getFacesContext();
- for (UIComponent child : getChildren())
+ for (int i = 0, childCount = getChildCount(); i < childCount; i++)
{
+ UIComponent child = getChildren().get(i);
_restoreChildState(context, child);
}
}
@@ -441,8 +442,9 @@ public class UIRepeat extends UIComponen
if (getChildCount() > 0)
{
FacesContext context = getFacesContext();
- for (UIComponent child : getChildren())
+ for (int i = 0, childCount = getChildCount(); i < childCount; i++)
{
+ UIComponent child = getChildren().get(i);
_saveChildState(context, child);
}
}
@@ -617,8 +619,9 @@ public class UIRepeat extends UIComponen
}
else
{
- for (UIComponent child : getChildren())
+ for (int j = 0, childCount = getChildCount(); j < childCount; j++)
{
+ UIComponent child = getChildren().get(j);
if (PhaseId.APPLY_REQUEST_VALUES.equals(phase))
{
child.processDecodes(faces);
@@ -819,8 +822,9 @@ public class UIRepeat extends UIComponen
_setIndex(i);
while (i <= end && _isIndexAvailable())
{
- for (UIComponent child : getChildren())
+ for (int j = 0, childCount = getChildCount(); j < childCount; j++)
{
+ UIComponent child = getChildren().get(j);
if (child.visitTree(context, callback))
{
return true;
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ComponentSupport.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ComponentSupport.java?rev=1133517&r1=1133516&r2=1133517&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ComponentSupport.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/jsf/ComponentSupport.java Wed Jun 8 19:19:52 2011
@@ -109,10 +109,12 @@ public final class ComponentSupport
*/
public static UIComponent findChild(UIComponent parent, String id)
{
- if (parent.getChildCount() > 0)
+ int childCount = parent.getChildCount();
+ if (childCount > 0)
{
- for (UIComponent child : parent.getChildren())
+ for (int i = 0; i < childCount; i++)
{
+ UIComponent child = parent.getChildren().get(i);
if (id.equals(child.getId()))
{
return child;
@@ -286,8 +288,9 @@ public final class ComponentSupport
}
else if (toRender.getChildCount() > 0)
{
- for (UIComponent child : toRender.getChildren())
+ for (int i = 0, childCount = toRender.getChildCount(); i < childCount; i++)
{
+ UIComponent child = toRender.getChildren().get(i);
encodeRecursive(context, child);
}
}
Modified: myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/DebugPhaseListener.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/DebugPhaseListener.java?rev=1133517&r1=1133516&r2=1133517&view=diff
==============================================================================
--- myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/DebugPhaseListener.java (original)
+++ myfaces/core/trunk/impl/src/main/java/org/apache/myfaces/view/facelets/tag/ui/DebugPhaseListener.java Wed Jun 8 19:19:52 2011
@@ -229,8 +229,9 @@ public class DebugPhaseListener implemen
// check if there are already debugInfos from UIInput
List<Object[]> fieldDebugInfos = getFieldDebugInfos(field, clientId);
boolean found = false;
- for (Object[] debugInfo : fieldDebugInfos)
+ for (int i = 0, size = fieldDebugInfos.size(); i < size; i++)
{
+ Object[] debugInfo = fieldDebugInfos.get(i);
if (debugInfo[0].equals(_currentPhase))
{
found = true;