Author: dolander
Date: Mon Nov 1 11:02:04 2004
New Revision: 56272
Modified:
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/AbstractClassicTag.java
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Form.java
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Select.java
Log:
Few Perf changes.
The biggest is lifting the list.size() out of the loop test in a couple of
places.
Modified:
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/AbstractClassicTag.java
==============================================================================
---
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/AbstractClassicTag.java
(original)
+++
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/AbstractClassicTag.java
Mon Nov 1 11:02:04 2004
@@ -208,20 +208,21 @@
if (namingChain == null)
return rewriteName(name);
- if (logger.isDebugEnabled())
- logger.debug("rewrite name \"" + name + "\" on tag of type \"" +
getClass().getName() + " with namingChain " +
- (namingChain != null ? "size " + namingChain.size() :
"null"));
+ //if (logger.isDebugEnabled())
+ // logger.debug("rewrite name \"" + name + "\" on tag of type \"" +
getClass().getName() + " with namingChain " +
+ // (namingChain != null ? "size " + namingChain.size() :
"null"));
try {
String newName = name;
- for (int i = 0; i < namingChain.size(); i++) {
- if (logger.isDebugEnabled())
- logger.debug("rewriteName: \"" + newName + "\" with
NameInterceptor: " + namingChain.get(i).getClass().getName());
+ int cnt = namingChain.size();
+ for (int i = 0; i < cnt; i++) {
+ //if (logger.isDebugEnabled())
+ // logger.debug("rewriteName: \"" + newName + "\" with
NameInterceptor: " + namingChain.get(i).getClass().getName());
newName = ((NameInterceptor)
namingChain.get(i)).rewriteName(newName, this);
- if (logger.isDebugEnabled())
- logger.debug("rewrite result: " + newName);
+ //if (logger.isDebugEnabled())
+ // logger.debug("rewrite result: " + newName);
}
return rewriteName(newName);
Modified:
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Form.java
==============================================================================
---
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Form.java
(original)
+++
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Form.java
Mon Nov 1 11:02:04 2004
@@ -228,6 +228,8 @@
private boolean _formSubmit = false;
private Map _params;
+ private int _nextId;
+
/**
* Return the name of the Tag.
*/
@@ -591,13 +593,7 @@
*/
public String getNextId()
{
- HttpServletRequest req = (HttpServletRequest) pageContext.getRequest();
- Integer nextId = (Integer) req.getAttribute(ID_REQUEST_ATTRIBUTE);
- if (nextId == null)
- nextId = new Integer(0);
- int id = nextId.intValue() + 1;
- req.setAttribute(ID_REQUEST_ATTRIBUTE, new Integer(id));
- return ID_PREFIX + id;
+ return ID_PREFIX + _nextId++;
}
@@ -623,6 +619,10 @@
// Create an appropriate "form" element based on our parameters
HttpServletRequest request = (HttpServletRequest)
pageContext.getRequest();
+ Integer nextId = (Integer) request.getAttribute(ID_REQUEST_ATTRIBUTE);
+ if (nextId == null)
+ nextId = new Integer(0);
+ _nextId = nextId.intValue();
_formId = FORM_ID + getNextId(request);
String tagId = getTagId();
@@ -721,6 +721,8 @@
// Create an appropriate "form" element based on our parameters
HttpServletRequest request = (HttpServletRequest)
pageContext.getRequest();
ServletContext servletContext = pageContext.getServletContext();
+
+ request.setAttribute(ID_REQUEST_ATTRIBUTE, new Integer(_nextId));
_state.name = _beanName;
if (_beanName == null) {
Modified:
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Select.java
==============================================================================
---
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Select.java
(original)
+++
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Select.java
Mon Nov 1 11:02:04 2004
@@ -254,6 +254,7 @@
private ArrayList _optionList;
private String[] _match; // The actual values we will match
against
private boolean _nullable;
+ private TagRenderingBase _optRb;
private static final List _internalNamingChain;
@@ -873,7 +874,7 @@
super.localRelease();
_state.clear();
- _optionState.clear();
+ //_optionState.clear();
_defaultSelections = null;
_formatters = null;
@@ -889,6 +890,7 @@
_repCurStage = 0;
_dynamicOptions = null;
_formatterError = false;
+ _optRb = null;
}
private String getErrorsFromBody()
@@ -1125,8 +1127,9 @@
_optionState.selected = true;
}
- TagRenderingBase br =
TagRenderingBase.Factory.getRendering(TagRenderingBase.OPTION_TAG, req);
- br.doStartTag(buffer, _optionState);
+ if (_optRb == null)
+ _optRb =
TagRenderingBase.Factory.getRendering(TagRenderingBase.OPTION_TAG, req);
+ _optRb.doStartTag(buffer, _optionState);
if (optionDisplay != null) {
@@ -1138,7 +1141,7 @@
buffer.append(">");
}
- br.doEndTag(buffer);
+ _optRb.doEndTag(buffer);
addOptionToList(optionValue);
}
@@ -1175,7 +1178,8 @@
public String formatText(Object text)
throws JspException
{
- for (int i = 0; i < _formatters.size(); i++) {
+ int cnt = _formatters.size();
+ for (int i = 0; i < cnt; i++) {
FormatTag.Formatter currentFormatter = (FormatTag.Formatter)
_formatters.get(i);
try {
text = currentFormatter.format(text);