You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by an...@apache.org on 2006/04/12 12:24:26 UTC
svn commit: r393428 - in /cocoon/trunk:
blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/java/xsp.xsl
commons/status.xml
Author: anathaniel
Date: Wed Apr 12 03:24:22 2006
New Revision: 393428
URL: http://svn.apache.org/viewcvs?rev=393428&view=rev
Log:
XSP block: Use private methods to call start/endElement in xsp.xsl.
That generates smaller bytecode allowing to compiler larger XSPs before hitting the
64k limit for the size of the generate() method.
Modified:
cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/java/xsp.xsl
cocoon/trunk/commons/status.xml
Modified: cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/java/xsp.xsl
URL: http://svn.apache.org/viewcvs/cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/java/xsp.xsl?rev=393428&r1=393427&r2=393428&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/java/xsp.xsl (original)
+++ cocoon/trunk/blocks/cocoon-xsp/cocoon-xsp-impl/src/main/java/org/apache/cocoon/components/language/markup/xsp/java/xsp.xsl Wed Apr 12 03:24:22 2006
@@ -117,6 +117,15 @@
// Internally used list of attributes for SAX events. Being on
// class scope allows xsp:logic to define markup generating methods.
private final AttributesImpl _xspAttr = new AttributesImpl();
+
+ private void _startElem(String namespace, String localname, String name) throws SAXException {
+ this.contentHandler.startElement(namespace, localname, name, _xspAttr);
+ _xspAttr.clear();
+ }
+
+ private void _endElem(String namespace, String localname, String name) throws SAXException {
+ this.contentHandler.endElement(namespace, localname, name);
+ }
/* Built-in parameters available for use */
// context - org.apache.cocoon.environment.Context
@@ -128,7 +137,7 @@
/* User Class Declarations */
<xsl:apply-templates select="xsp:logic"/>
-
+
/**
* Generate XML data.
*/
@@ -457,20 +466,18 @@
<xsl:apply-templates select="xsp:attribute | xsp:logic[xsp:attribute]"/>
- this.contentHandler.startElement(
+ _startElem(
"<xsl:value-of select="namespace-uri(.)"/>",
"<xsl:value-of select="local-name(.)"/>",
- "<xsl:value-of select="name(.)"/>",
- _xspAttr
+ "<xsl:value-of select="name(.)"/>"
);
- _xspAttr.clear();
<xsl:apply-templates select="node()[not(
(namespace-uri(.) = $xsp-uri and local-name(.) = 'attribute') or
(namespace-uri(.) = $xsp-uri and local-name(.) = 'logic' and ./xsp:attribute)
)]"/>
- this.contentHandler.endElement(
+ _endElem(
"<xsl:value-of select="namespace-uri(.)"/>",
"<xsl:value-of select="local-name(.)"/>",
"<xsl:value-of select="name(.)"/>"
Modified: cocoon/trunk/commons/status.xml
URL: http://svn.apache.org/viewcvs/cocoon/trunk/commons/status.xml?rev=393428&r1=393427&r2=393428&view=diff
==============================================================================
--- cocoon/trunk/commons/status.xml (original)
+++ cocoon/trunk/commons/status.xml Wed Apr 12 03:24:22 2006
@@ -175,6 +175,11 @@
<!-- These are the changes from the last 2.1.x version. -->
<changes>
<release version="@version@" date="@date@">
+ <action dev="AN" type="add">
+ XSP block: Use private methods to call start/endElement in xsp.xsl.
+ That generates smaller bytecode allowing to compiler larger XSPs before hitting the
+ 64k limit for the size of the generate() method.
+ </action>
<action dev="CZ" type="update">
Removed obsolete support for JCS.
</action>