Author: rmannibucau
Date: Sun Jul 20 13:59:36 2014
New Revision: 1612087

URL: http://svn.apache.org/r1612087
Log:
force resources to be refresh whatever the client sends as header

Modified:
    
tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/naming/resources/AdditionalDocBase.java

Modified: 
tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/naming/resources/AdditionalDocBase.java
URL: 
http://svn.apache.org/viewvc/tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/naming/resources/AdditionalDocBase.java?rev=1612087&r1=1612086&r2=1612087&view=diff
==============================================================================
--- 
tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/naming/resources/AdditionalDocBase.java
 (original)
+++ 
tomee/tomee/trunk/tomee/tomee-catalina/src/main/java/org/apache/tomee/catalina/naming/resources/AdditionalDocBase.java
 Sun Jul 20 13:59:36 2014
@@ -18,7 +18,10 @@ package org.apache.tomee.catalina.naming
 
 import org.apache.naming.resources.FileDirContext;
 
+import javax.naming.NamingException;
+import javax.naming.directory.Attributes;
 import java.io.File;
+import java.util.Date;
 
 // a normal FileDirContext just unwrapping tomcat prefix
 // to simulate a normal webapp dir and not a jar one
@@ -39,4 +42,35 @@ public class AdditionalDocBase extends F
         }
         return super.file(name);
     }
+
+    @Override
+    protected Attributes doGetAttributes(String name, String[] attrIds) throws 
NamingException {
+        final File file = file(name);
+
+        if (file == null)
+            return null;
+
+        return new ForceRefeshAttributes(file);
+    }
+
+    private class ForceRefeshAttributes extends FileResourceAttributes {
+        public ForceRefeshAttributes(final File file) {
+            super(file);
+        }
+
+        @Override
+        public String getETag() {
+            return null;
+        }
+
+        @Override
+        public Date getLastModifiedDate() {
+            return new Date();
+        }
+
+        @Override
+        public long getLastModified() {
+            return System.currentTimeMillis();
+        }
+    }
 }


Reply via email to