Author: michiel
Date: 2010-06-18 17:09:11 +0200 (Fri, 18 Jun 2010)
New Revision: 42610

Modified:
   
mmbase/trunk/applications/resources/src/main/java/org/mmbase/servlet/FileServlet.java
Log:
Support for If-Range

Modified: 
mmbase/trunk/applications/resources/src/main/java/org/mmbase/servlet/FileServlet.java
===================================================================
--- 
mmbase/trunk/applications/resources/src/main/java/org/mmbase/servlet/FileServlet.java
       2010-06-18 14:54:39 UTC (rev 42609)
+++ 
mmbase/trunk/applications/resources/src/main/java/org/mmbase/servlet/FileServlet.java
       2010-06-18 15:09:11 UTC (rev 42610)
@@ -427,6 +427,16 @@
      * @since MMBase-2.0
      */
     protected ChainedRange getRange(HttpServletRequest req, File file) {
+        try {
+            long ifRange = req.getDateHeader("If-Range");
+            if (ifRange < file.lastModified()) {
+                // cannot use partial content, because the file was changed in 
the mean time
+                return null;
+            }
+        } catch (IllegalArgumentException ie) {
+            // never mind, it may be entity tag, which we don't support
+        }
+
         String range = req.getHeader("Range");
         if (range != null) {
             String r[] = range.split("=");

_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to