Author: vgritsenko Date: Mon May 2 13:38:19 2005 New Revision: 165680 URL: http://svn.apache.org/viewcvs?rev=165680&view=rev Log: remove one extra copying of characters.
Modified: cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/transformation/helpers/TextRecorder.java Modified: cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/transformation/helpers/TextRecorder.java URL: http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/transformation/helpers/TextRecorder.java?rev=165680&r1=165679&r2=165680&view=diff ============================================================================== --- cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/transformation/helpers/TextRecorder.java (original) +++ cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/transformation/helpers/TextRecorder.java Mon May 2 13:38:19 2005 @@ -1,12 +1,12 @@ /* - * Copyright 1999-2004 The Apache Software Foundation. - * + * Copyright 1999-2005 The Apache Software Foundation. + * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -15,31 +15,33 @@ */ package org.apache.cocoon.transformation.helpers; -import org.xml.sax.SAXException; - - /** - * This class records SAX Events and generates a String from all - * characters events + * This class records all character SAX events and creates a string + * from them. * * @author <a href="mailto:[EMAIL PROTECTED]">Carsten Ziegeler</a> - * @version CVS $Id: TextRecorder.java,v 1.3 2004/03/05 13:03:00 bdelacretaz Exp $ + * @version $Id$ */ -public final class TextRecorder -extends NOPRecorder { +public final class TextRecorder extends NOPRecorder { + + /** + * Buffer collecting all character events. + */ + private StringBuffer buffer; public TextRecorder() { super(); + this.buffer = new StringBuffer(); } - private StringBuffer buffer = new StringBuffer(); - - public void characters(char ary[], int start, int length) - throws SAXException { - buffer.append(new String(ary, start, length)); + public void characters(char ary[], int start, int length) { + this.buffer.append(ary, start, length); } + /** + * @return Recorded text so far, trimmed. + */ public String getText() { - return buffer.toString().trim(); + return this.buffer.toString().trim(); } }