Author: pete
Date: Wed Jun 29 17:57:44 2011
New Revision: 1141180
URL: http://svn.apache.org/viewvc?rev=1141180&view=rev
Log:
WICKET-3846 javadoc + more tests
Modified:
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/AbstractFilenameWithVersionResourceCachingStrategy.java
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/FilenameWithStaticVersionResourceCachingStrategy.java
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapperTest.java
Modified:
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/AbstractFilenameWithVersionResourceCachingStrategy.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/AbstractFilenameWithVersionResourceCachingStrategy.java?rev=1141180&r1=1141179&r2=1141180&view=diff
==============================================================================
---
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/AbstractFilenameWithVersionResourceCachingStrategy.java
(original)
+++
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/AbstractFilenameWithVersionResourceCachingStrategy.java
Wed Jun 29 17:57:44 2011
@@ -27,8 +27,12 @@ import org.apache.wicket.util.lang.Args;
* <p/>
* versioned_filename := [basename][version-suffix][version](.extension)
* <p/>
- * Since browsers and proxies use this versioned filename of the resource as a
- * cache key a change to the version will cause a cache miss and subsequent
reload.
+ * the <code>version</code> must not contain the <code>version-suffix</code>.
+ * <p/>
+ * Since browsers and proxies use the versioned filename of the resource url
+ * as a cache key a change to the version will cause a cache miss and
subsequent
+ * reload of the updated version. This enables us to set the caching duration
+ * of the resource to a maximum.
* <p/>
*
* @author Peter Ertl
@@ -36,7 +40,8 @@ import org.apache.wicket.util.lang.Args;
public abstract class AbstractFilenameWithVersionResourceCachingStrategy
extends AbstractResourceCachingStrategy
{
- /** suffix that uniquely identifies beginning of the version
+ /**
+ * suffix that marks the beginning the of the version
* string inside the resource filename */
private final String versionSuffix;
Modified:
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/FilenameWithStaticVersionResourceCachingStrategy.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/FilenameWithStaticVersionResourceCachingStrategy.java?rev=1141180&r1=1141179&r2=1141180&view=diff
==============================================================================
---
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/FilenameWithStaticVersionResourceCachingStrategy.java
(original)
+++
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/resource/caching/FilenameWithStaticVersionResourceCachingStrategy.java
Wed Jun 29 17:57:44 2011
@@ -27,9 +27,6 @@ import org.apache.wicket.util.lang.Args;
* When deploying an updated version of the application the version string
should be
* changed. The version string could be hardcoded, taken from some build-tool
generated
* properties file, injected by spring, etc.
- * <p/>
- * Tt is recommended to use only numbers and characters for the version string
to avoid
- * ambiguities when parsing resource filenames.
*
* @author Peter Ertl
*/
Modified:
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapperTest.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapperTest.java?rev=1141180&r1=1141179&r2=1141180&view=diff
==============================================================================
---
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapperTest.java
(original)
+++
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/request/mapper/BasicResourceReferenceMapperTest.java
Wed Jun 29 17:57:44 2011
@@ -555,5 +555,16 @@ public class BasicResourceReferenceMappe
url = new ResourceUrl("test-version--------", params);
strategy.undecorateUrl(url);
assertEquals("test", url.getFileName());
+
+ // weird but valid
+ url = new ResourceUrl("test-version-1.0.3-alpha.txt", params);
+ strategy.undecorateUrl(url);
+ assertEquals("test.txt", url.getFileName());
+
+ // check a version that contains a dot which also marks the
filename extension
+ strategy = new
FilenameWithStaticVersionResourceCachingStrategy("-version-", "1.0.4-beta");
+ url = new ResourceUrl("test.txt", params);
+ strategy.decorateUrl(url, reference);
+ assertEquals("test-version-1.0.4-beta.txt", url.getFileName());
}
}