You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by da...@apache.org on 2011/07/05 17:13:19 UTC

svn commit: r1143096 - /wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/resource/ResourceStreamRequestHandler.java

Author: dashorst
Date: Tue Jul  5 15:13:18 2011
New Revision: 1143096

URL: http://svn.apache.org/viewvc?rev=1143096&view=rev
Log:
Always set content-disposition, but when none is set on the handler, use attachment for files (when a filename is set) or inline for inline resources (when no filename is set).
Issue: WICKET-3871

Modified:
    wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/resource/ResourceStreamRequestHandler.java

Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/resource/ResourceStreamRequestHandler.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/resource/ResourceStreamRequestHandler.java?rev=1143096&r1=1143095&r2=1143096&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/resource/ResourceStreamRequestHandler.java (original)
+++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/resource/ResourceStreamRequestHandler.java Tue Jul  5 15:13:18 2011
@@ -23,6 +23,7 @@ import org.apache.wicket.request.resourc
 import org.apache.wicket.request.resource.ResourceStreamResource;
 import org.apache.wicket.util.lang.Args;
 import org.apache.wicket.util.resource.IResourceStream;
+import org.apache.wicket.util.string.Strings;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -41,7 +42,7 @@ public class ResourceStreamRequestHandle
 	 * with web requests.
 	 */
 	private String fileName;
-	private ContentDisposition contentDisposition = ContentDisposition.INLINE;
+	private ContentDisposition contentDisposition;
 
 	/** the resource stream for the response. */
 	private final IResourceStream resourceStream;
@@ -74,7 +75,6 @@ public class ResourceStreamRequestHandle
 
 	public void detach(IRequestCycle requestCycle)
 	{
-
 	}
 
 	/**
@@ -108,7 +108,12 @@ public class ResourceStreamRequestHandle
 
 		ResourceStreamResource resource = new ResourceStreamResource(resourceStream);
 		resource.setFileName(fileName);
-		resource.setContentDisposition(contentDisposition);
+		if (contentDisposition != null)
+			resource.setContentDisposition(contentDisposition);
+		else
+			resource.setContentDisposition(Strings.isEmpty(fileName) ? ContentDisposition.INLINE
+				: ContentDisposition.ATTACHMENT);
+
 		resource.respond(attributes);
 	}
 
@@ -189,6 +194,4 @@ public class ResourceStreamRequestHandle
 		this.contentDisposition = contentDisposition;
 		return this;
 	}
-
-
 }