Return-Path: Delivered-To: apmail-cocoon-cvs-archive@www.apache.org Received: (qmail 85931 invoked from network); 20 Aug 2005 20:10:50 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 20 Aug 2005 20:10:50 -0000 Received: (qmail 38814 invoked by uid 500); 20 Aug 2005 20:10:49 -0000 Delivered-To: apmail-cocoon-cvs-archive@cocoon.apache.org Received: (qmail 38751 invoked by uid 500); 20 Aug 2005 20:10:49 -0000 Mailing-List: contact cvs-help@cocoon.apache.org; run by ezmlm Precedence: bulk Reply-To: dev@cocoon.apache.org list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list cvs@cocoon.apache.org Received: (qmail 38738 invoked by uid 99); 20 Aug 2005 20:10:48 -0000 X-ASF-Spam-Status: No, hits=-9.8 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [209.237.227.194] (HELO minotaur.apache.org) (209.237.227.194) by apache.org (qpsmtpd/0.29) with SMTP; Sat, 20 Aug 2005 13:10:48 -0700 Received: (qmail 85906 invoked by uid 65534); 20 Aug 2005 20:10:48 -0000 Message-ID: <20050820201048.85905.qmail@minotaur.apache.org> Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r234126 - in /cocoon: blocks/xsp/trunk/java/org/apache/cocoon/components/language/markup/xsp/java/xsp.xsl blocks/xsp/trunk/samples/java/simple.xsp trunk/status.xml Date: Sat, 20 Aug 2005 20:10:47 -0000 To: cvs@cocoon.apache.org From: anathaniel@apache.org X-Mailer: svnmailer-1.0.3 X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Author: anathaniel Date: Sat Aug 20 13:10:41 2005 New Revision: 234126 URL: http://svn.apache.org/viewcvs?rev=234126&view=rev Log: XSP block: Move AttributeImpl in xsp.xsl to class scope. That allows top-level xsp:logic to define markup generating methods. Variable xspAttr renamed to _xspAttr to be avoid breaking existing XSPs which already use that trick. Modified: cocoon/blocks/xsp/trunk/java/org/apache/cocoon/components/language/markup/xsp/java/xsp.xsl cocoon/blocks/xsp/trunk/samples/java/simple.xsp cocoon/trunk/status.xml Modified: cocoon/blocks/xsp/trunk/java/org/apache/cocoon/components/language/markup/xsp/java/xsp.xsl URL: http://svn.apache.org/viewcvs/cocoon/blocks/xsp/trunk/java/org/apache/cocoon/components/language/markup/xsp/java/xsp.xsl?rev=234126&r1=234125&r2=234126&view=diff ============================================================================== --- cocoon/blocks/xsp/trunk/java/org/apache/cocoon/components/language/markup/xsp/java/xsp.xsl (original) +++ cocoon/blocks/xsp/trunk/java/org/apache/cocoon/components/language/markup/xsp/java/xsp.xsl Sat Aug 20 13:10:41 2005 @@ -116,6 +116,10 @@ this.dependencies = _dependentFiles; } + // Internally used list of attributes for SAX events. Being on + // class scope allows xsp:logic to define markup generating methods. + private AttributesImpl _xspAttr = new AttributesImpl(); + /* Built-in parameters available for use */ // context - org.apache.cocoon.environment.Context // request - org.apache.cocoon.environment.Request @@ -137,7 +141,7 @@ this.contentHandler.startDocument(); - AttributesImpl xspAttr = new AttributesImpl(); + _xspAttr.clear(); @@ -266,10 +270,10 @@ , , , - xspAttr + _xspAttr ); - xspAttr.clear(); + _xspAttr.clear(); "" - xspAttr.addAttribute( + _xspAttr.addAttribute( , , , @@ -455,9 +459,9 @@ "", "", "", - xspAttr + _xspAttr ); - xspAttr.clear(); + _xspAttr.clear(); - xspAttr.addAttribute( + _xspAttr.addAttribute( "", "", "", Modified: cocoon/blocks/xsp/trunk/samples/java/simple.xsp URL: http://svn.apache.org/viewcvs/cocoon/blocks/xsp/trunk/samples/java/simple.xsp?rev=234126&r1=234125&r2=234126&view=diff ============================================================================== --- cocoon/blocks/xsp/trunk/samples/java/simple.xsp (original) +++ cocoon/blocks/xsp/trunk/samples/java/simple.xsp Sat Aug 20 13:10:41 2005 @@ -26,6 +26,18 @@ xmlns:capture="http://apache.org/cocoon/capture/1.0" xmlns:input="http://apache.org/cocoon/xsp/input/1.0"> + + void sayHello(int n) throws SAXException { +
    + + for (int i = 0; i < n; i++) { +
  • Hello world i+1
  • + } +
    +
+ } +
+ @@ -56,6 +68,11 @@ } + + The following list was generated by a subroutine: + + sayHello(3); + "P".toLowerCase() Modified: cocoon/trunk/status.xml URL: http://svn.apache.org/viewcvs/cocoon/trunk/status.xml?rev=234126&r1=234125&r2=234126&view=diff ============================================================================== --- cocoon/trunk/status.xml (original) +++ cocoon/trunk/status.xml Sat Aug 20 13:10:41 2005 @@ -198,6 +198,12 @@ + XSP block: Move AttributeImpl in xsp.xsl to class scope. + That allows top-level xsp:logic to define markup generating methods. + Variable xspAttr renamed to _xspAttr to be avoid breaking existing + XSPs which already use that trick. + + XSP block: Add xsp:expr and various other contexts where text must be passed through XSLTExtension:escape in order to preserve non-ASCII characters in Java string constants independently of the XSP source file