Return-Path: Delivered-To: apmail-sling-commits-archive@www.apache.org Received: (qmail 62891 invoked from network); 24 Jan 2011 10:07:30 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 24 Jan 2011 10:07:30 -0000 Received: (qmail 37941 invoked by uid 500); 24 Jan 2011 10:07:29 -0000 Delivered-To: apmail-sling-commits-archive@sling.apache.org Received: (qmail 37883 invoked by uid 500); 24 Jan 2011 10:07:27 -0000 Mailing-List: contact commits-help@sling.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@sling.apache.org Delivered-To: mailing list commits@sling.apache.org Received: (qmail 37876 invoked by uid 99); 24 Jan 2011 10:07:26 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 24 Jan 2011 10:07:26 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 24 Jan 2011 10:07:24 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 1F71F2388A39; Mon, 24 Jan 2011 10:07:03 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1062713 - in /sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl: output/BufferProvider.java request/ContentData.java request/RequestData.java Date: Mon, 24 Jan 2011 10:07:03 -0000 To: commits@sling.apache.org From: fmeschbe@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20110124100703.1F71F2388A39@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: fmeschbe Date: Mon Jan 24 10:07:02 2011 New Revision: 1062713 URL: http://svn.apache.org/viewvc?rev=1062713&view=rev Log: SLING-1951 Provide sensible default (the buffer size used by the servlet container for the current response) for the internal buffer size Modified: sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/output/BufferProvider.java sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/ContentData.java sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/RequestData.java Modified: sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/output/BufferProvider.java URL: http://svn.apache.org/viewvc/sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/output/BufferProvider.java?rev=1062713&r1=1062712&r2=1062713&view=diff ============================================================================== --- sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/output/BufferProvider.java (original) +++ sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/output/BufferProvider.java Mon Jan 24 10:07:02 2011 @@ -24,14 +24,40 @@ import java.io.PrintWriter; import javax.servlet.ServletOutputStream; /** - * The BufferProvider provides - * buffered versions of the servlet output - * stream and the print writer. + * The BufferProvider provides buffered versions of the servlet + * output stream and the print writer. */ public interface BufferProvider { + /** + * Sets the size of the buffer to be used (by default) for output streams + * returned by {@link #getOutputStream()} or writers returned by + * {@link #getWriter()} + * + * @param size The default buffersize. Negative values or zero disable + * buffering. + */ + void setBufferSize(int size); + + /** + * @return the currently set buffer size. This is either some default buffer + * size or the size last set by the {@link #setBufferSize(int)} + * method. + */ + int getBufferSize(); + + /** + * @return a buffered ServletOutputStream whose initial buffer + * size is set to {@link #getBufferSize()}. + * @throws IOException If an error occurrs setting up the output stream + */ ServletOutputStream getOutputStream() throws IOException; + /** + * @return a buffered PrintWriter whose initial buffer size is + * set to {@link #getBufferSize()}. + * @throws IOException If an error occurrs setting up the writer + */ PrintWriter getWriter() throws IOException; } Modified: sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/ContentData.java URL: http://svn.apache.org/viewvc/sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/ContentData.java?rev=1062713&r1=1062712&r2=1062713&view=diff ============================================================================== --- sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/ContentData.java (original) +++ sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/ContentData.java Mon Jan 24 10:07:02 2011 @@ -57,6 +57,7 @@ public class ContentData implements Buff this.resource = resource; this.requestPathInfo = requestPathInfo; this.parent = parent; + this.requestedBufferSize = parent.getBufferSize(); } /* package */void dispose() { Modified: sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/RequestData.java URL: http://svn.apache.org/viewvc/sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/RequestData.java?rev=1062713&r1=1062712&r2=1062713&view=diff ============================================================================== --- sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/RequestData.java (original) +++ sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/RequestData.java Mon Jan 24 10:07:02 2011 @@ -638,6 +638,14 @@ public class RequestData implements Buff : this; } + public int getBufferSize() { + return getServletResponse().getBufferSize(); + } + + public void setBufferSize(int size) { + getServletResponse().setBufferSize(size); + } + public ServletOutputStream getOutputStream() throws IOException { return getServletResponse().getOutputStream(); }