Author: almaw
Date: Thu Aug  9 07:18:10 2007
New Revision: 564210

URL: http://svn.apache.org/viewvc?view=rev&rev=564210
Log:
ResourceStream.length() might be expensive - only calculate once.

Modified:
    
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java

Modified: 
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java?view=diff&rev=564210&r1=564209&r2=564210
==============================================================================
--- 
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java
 (original)
+++ 
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/resource/ResourceStreamRequestTarget.java
 Thu Aug  9 07:18:10 2007
@@ -74,8 +74,8 @@
                if (obj instanceof ResourceStreamRequestTarget)
                {
                        ResourceStreamRequestTarget that = 
(ResourceStreamRequestTarget)obj;
-                       return resourceStream.equals(that.resourceStream)
-                                       && ((fileName != null) ? 
fileName.equals(that.fileName) : true);
+                       return resourceStream.equals(that.resourceStream) &&
+                                       ((fileName != null) ? 
fileName.equals(that.fileName) : true);
                }
                return false;
        }
@@ -128,7 +128,8 @@
                }
                catch (ResourceStreamNotFoundException e)
                {
-                       requestCycle.setRequestTarget(new 
WebErrorCodeResponseTarget(HttpServletResponse.SC_NOT_FOUND));
+                       requestCycle.setRequestTarget(new 
WebErrorCodeResponseTarget(
+                                       HttpServletResponse.SC_NOT_FOUND));
                }
        }
 
@@ -136,7 +137,7 @@
         * @param fileName
         *            Optional filename, used to set the content disposition 
header.
         *            Only meaningful when using with web requests.
-        *            
+        * 
         * @return The this.
         */
        public ResourceStreamRequestTarget setFileName(String fileName)
@@ -150,8 +151,8 @@
         */
        public String toString()
        {
-               return "[ResourceStreamRequestTarget[resourceStream=" + 
resourceStream + ",fileName="
-                               + fileName + "]";
+               return "[ResourceStreamRequestTarget[resourceStream=" + 
resourceStream + ",fileName=" +
+                               fileName + "]";
        }
 
        /**
@@ -164,11 +165,13 @@
         * @param resourceStream
         *            the resource stream that will be rendered
         */
-       protected void configure(final RequestCycle requestCycle, final 
Response response, final IResourceStream resourceStream)
+       protected void configure(final RequestCycle requestCycle, final 
Response response,
+                       final IResourceStream resourceStream)
        {
                // Configure response with content type of resource, if 
available
                String responseType = resourceStream.getContentType();
-               if (responseType != null) {
+               if (responseType != null)
+               {
                        response.setContentType(responseType + "; charset=" + 
response.getCharacterEncoding());
                }
                else
@@ -185,10 +188,11 @@
                }
 
                // WICKET-473 Allow IResourceStream.length() to return -1
-               if (resourceStream.length() >= 0)
+               long len = resourceStream.length();
+               if (len >= 0)
                {
                        // and the content length
-                       response.setContentLength(resourceStream.length());
+                       response.setContentLength(len);
                }
 
                // and content disposition if any


Reply via email to