Author: dolander
Date: Mon Nov 1 17:13:11 2004
New Revision: 56315
Modified:
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Body.java
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBox.java
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBoxGroup.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/HtmlGroupBaseTag.java
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/RadioButtonGroup.java
Log:
Performance Update.
Remove calls to get the ConstantRenderer
Modified:
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Body.java
==============================================================================
---
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Body.java
(original)
+++
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Body.java
Mon Nov 1 17:13:11 2004
@@ -240,7 +240,8 @@
*/
public int doEndTag() throws JspException
{
- StringBuilder results = new StringBuilder(16);
+ int size = (_text != null) ? _text.length() + 32 : 512;
+ StringBuilder results = new StringBuilder(size);
// render the header...
TagRenderingBase br =
TagRenderingBase.Factory.getRendering(TagRenderingBase.BODY_TAG,
Modified:
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBox.java
==============================================================================
---
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBox.java
(original)
+++
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBox.java
Mon Nov 1 17:13:11 2004
@@ -274,6 +274,7 @@
}
String hiddenParamName = realName + OLDVALUE_SUFFIX;
+ ServletRequest req = pageContext.getRequest();
// @todo: should we not support the "on" version of this?
if (val instanceof String) {
@@ -286,7 +287,7 @@
_state.checked = ((Boolean) val).booleanValue();
}
else {
- String oldCheckBoxValue =
pageContext.getRequest().getParameter(hiddenParamName);
+ String oldCheckBoxValue = req.getParameter(hiddenParamName);
if (oldCheckBoxValue != null) {
_state.checked = new Boolean(oldCheckBoxValue).booleanValue();
}
@@ -296,7 +297,6 @@
}
_state.disabled = isDisabled();
- ServletRequest req = pageContext.getRequest();
StringBuilder results = new StringBuilder(128);
idScript = renderTagId(_state, realName, false, true);
Modified:
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBoxGroup.java
==============================================================================
---
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBoxGroup.java
(original)
+++
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBoxGroup.java
Mon Nov 1 17:13:11 2004
@@ -22,7 +22,6 @@
import org.apache.beehive.netui.tags.naming.FormDataNameInterceptor;
import org.apache.beehive.netui.tags.naming.IndexedNameInterceptor;
import org.apache.beehive.netui.tags.naming.PrefixNameInterceptor;
-import org.apache.beehive.netui.tags.rendering.ConstantRendering;
import org.apache.beehive.netui.tags.rendering.InputHiddenTag;
import org.apache.beehive.netui.tags.rendering.TagRenderingBase;
import org.apache.beehive.netui.util.Bundle;
@@ -324,7 +323,8 @@
public int doStartTag() throws JspException
{
ServletRequest req = pageContext.getRequest();
- ConstantRendering cr =
TagRenderingBase.Factory.getConstantRendering(req);
+ if (_cr == null)
+ _cr = TagRenderingBase.Factory.getConstantRendering(req);
// get the evaluated dataSource and default values
Object val = evaluateDataSource();
@@ -359,7 +359,7 @@
}
if (isVertical())
- cr.TABLE(results);
+ _cr.TABLE(results);
// if this is a repeater then we shouid prime the pump...
_dynamicAttrs = evaluateOptionsDataSource();
@@ -379,7 +379,7 @@
break;
}
if (isVertical())
- cr.TR_TD(results);
+ _cr.TR_TD(results);
DataAccessProviderStack.addDataAccessProvider(this, pageContext);
}
@@ -408,17 +408,18 @@
if (_repeater) {
ServletRequest req = pageContext.getRequest();
- ConstantRendering cr =
TagRenderingBase.Factory.getConstantRendering(req);
+ if (_cr == null)
+ _cr = TagRenderingBase.Factory.getConstantRendering(req);
if (isVertical())
- cr.end_TD_TR(_saveBody);
+ _cr.end_TD_TR(_saveBody);
while (((Iterator) _dynamicAttrs).hasNext()) {
_repCurItem = ((Iterator) _dynamicAttrs).next();
if (_repCurItem != null) {
_repIdx++;
if (isVertical())
- cr.TR_TD(_saveBody);
+ _cr.TR_TD(_saveBody);
return EVAL_BODY_AGAIN;
}
@@ -439,8 +440,9 @@
return reportAndExit(EVAL_PAGE);
ServletRequest req = pageContext.getRequest();
- ConstantRendering cr =
TagRenderingBase.Factory.getConstantRendering(req);
StringBuilder results = new StringBuilder(128);
+ if (_cr == null)
+ _cr = TagRenderingBase.Factory.getConstantRendering(req);
String idScript = null;
String altText = null;
@@ -455,7 +457,7 @@
if (_repeater) {
// Render a tag representing the end of our current form
if (isVertical())
- cr.end_TABLE(results);
+ _cr.end_TABLE(results);
if (idScript != null)
results.append(idScript);
@@ -481,7 +483,7 @@
if (hasErrors()) {
reportErrors();
if (isVertical()) {
- cr.end_TABLE(results);
+ _cr.end_TABLE(results);
write(results.toString());
}
localRelease();
@@ -511,7 +513,7 @@
if (hasErrors()) {
reportErrors();
if (isVertical()) {
- cr.end_TABLE(results);
+ _cr.end_TABLE(results);
write(results.toString());
}
localRelease();
@@ -522,7 +524,7 @@
}
if (isVertical())
- cr.end_TABLE(results);
+ _cr.end_TABLE(results);
if (idScript != null)
results.append(idScript);
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 17:13:11 2004
@@ -613,12 +613,14 @@
}
// Look up the form bean name, scope, and type if necessary
- lookup();
+ HttpServletRequest request = (HttpServletRequest)
pageContext.getRequest();
+ ServletContext servletContext = pageContext.getServletContext();
+
+ lookup(request,servletContext);
if (hasErrors())
return SKIP_BODY;
// 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);
@@ -664,7 +666,7 @@
bean = RequestUtils.createActionForm(request, _mapping,
_appConfig, _servlet);
if (bean == null) {
bean = InternalUtils.createActionForm(request, _mapping,
_appConfig, _servlet,
- pageContext.getServletContext());
+ servletContext);
}
}
@@ -935,11 +937,9 @@
* <code>type</code> properties if necessary.
* @throws JspException if a required value cannot be looked up
*/
- private void lookup()
+ private void lookup(HttpServletRequest request,ServletContext
servletContext)
throws JspException
{
- ServletContext servletContext = pageContext.getServletContext();
- HttpServletRequest request = (HttpServletRequest)
pageContext.getRequest();
HttpServletResponse response = (HttpServletResponse)
pageContext.getResponse();
// Look up the application module configuration information we need
Modified:
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/HtmlGroupBaseTag.java
==============================================================================
---
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/HtmlGroupBaseTag.java
(original)
+++
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/HtmlGroupBaseTag.java
Mon Nov 1 17:13:11 2004
@@ -55,6 +55,7 @@
private InputBooleanTag.State _inputState = new InputBooleanTag.State();
private SpanTag.State _spanState = new SpanTag.State();
+ protected ConstantRendering _cr;
private HashMap _attrs;
@@ -503,7 +504,8 @@
throws JspException
{
ServletRequest req = pageContext.getRequest();
- ConstantRendering cr =
TagRenderingBase.Factory.getConstantRendering(req);
+ if (_cr == null)
+ _cr = TagRenderingBase.Factory.getConstantRendering(req);
assert(buffer != null);
assert(optionValue != null);
@@ -511,7 +513,7 @@
assert(type != null);
if (_orientation != null && isVertical()) {
- cr.TR_TD(buffer);
+ _cr.TR_TD(buffer);
}
_inputState.clear();
@@ -559,14 +561,14 @@
// backward compatibility this is now overridden by the _orientation
if (_orientation == null) {
- cr.BR(buffer);
+ _cr.BR(buffer);
}
else {
if (isVertical()) {
- cr.TR_TD(buffer);
+ _cr.TR_TD(buffer);
}
else {
- cr.NBSP(buffer);
+ _cr.NBSP(buffer);
}
}
}
@@ -579,6 +581,7 @@
super.localRelease();
if (_attrs != null)
_attrs.clear();
+ _cr = null;
_dataSource = null;
_defaultValue = null;
_optionsDataSource = null;
Modified:
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/RadioButtonGroup.java
==============================================================================
---
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/RadioButtonGroup.java
(original)
+++
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/RadioButtonGroup.java
Mon Nov 1 17:13:11 2004
@@ -18,16 +18,14 @@
package org.apache.beehive.netui.tags.html;
import org.apache.beehive.netui.pageflow.ProcessPopulate;
+import org.apache.beehive.netui.script.common.DataAccessProviderStack;
import org.apache.beehive.netui.tags.naming.FormDataNameInterceptor;
import org.apache.beehive.netui.tags.naming.IndexedNameInterceptor;
import org.apache.beehive.netui.tags.naming.PrefixNameInterceptor;
-import org.apache.beehive.netui.tags.rendering.ConstantRendering;
import org.apache.beehive.netui.tags.rendering.TagRenderingBase;
import org.apache.beehive.netui.util.Bundle;
import org.apache.beehive.netui.util.logging.Logger;
import org.apache.beehive.netui.util.tags.GroupOption;
-import org.apache.beehive.netui.script.common.DataAccessProviderBean;
-import org.apache.beehive.netui.script.common.DataAccessProviderStack;
import javax.servlet.ServletRequest;
import javax.servlet.jsp.JspException;
@@ -274,10 +272,11 @@
return SKIP_BODY;
ServletRequest req = pageContext.getRequest();
- ConstantRendering cr =
TagRenderingBase.Factory.getConstantRendering(req);
+ if (_cr == null)
+ _cr = TagRenderingBase.Factory.getConstantRendering(req);
StringBuilder results = new StringBuilder(64);
if (isVertical()) {
- cr.TABLE(results);
+ _cr.TABLE(results);
}
// if this is a repeater then we shouid prime the pump...
@@ -298,7 +297,7 @@
break;
}
if (isVertical())
- cr.TR_TD(results);
+ _cr.TR_TD(results);
DataAccessProviderStack.addDataAccessProvider(this, pageContext);
}
@@ -324,16 +323,17 @@
if (_repeater) {
ServletRequest req = pageContext.getRequest();
- ConstantRendering cr =
TagRenderingBase.Factory.getConstantRendering(req);
+ if (_cr == null)
+ _cr = TagRenderingBase.Factory.getConstantRendering(req);
if (isVertical())
- cr.end_TD_TR(_saveBody);
+ _cr.end_TD_TR(_saveBody);
while (((Iterator) _dyanmicAttrs).hasNext()) {
_repCurItem = ((Iterator) _dyanmicAttrs).next();
if (_repCurItem != null) {
_repIdx++;
if (isVertical())
- cr.TR_TD(_saveBody);
+ _cr.TR_TD(_saveBody);
return EVAL_BODY_AGAIN;
}
}
@@ -358,7 +358,8 @@
// Remove the page scope attributes we created
pageContext.removeAttribute(RADIOBUTTONGROUP_KEY);
ServletRequest req = pageContext.getRequest();
- ConstantRendering cr =
TagRenderingBase.Factory.getConstantRendering(req);
+ if (_cr == null)
+ _cr = TagRenderingBase.Factory.getConstantRendering(req);
StringBuilder results = new StringBuilder(128);
if (_saveBody != null)
@@ -368,7 +369,7 @@
if (_repeater) {
// Render a tag representing the end of our current form
if (isVertical())
- cr.end_TABLE(results);
+ _cr.end_TABLE(results);
if (idScript != null)
results.append(idScript);
@@ -431,7 +432,7 @@
}
if (isVertical()) {
- cr.end_TABLE(results);
+ _cr.end_TABLE(results);
}
if (idScript != null)