From 1881aa5b5bdc31a2609326bef7c80cf84a02af7d Mon Sep 17 00:00:00 2001 From: Brian Clozel Date: Fri, 9 Sep 2016 22:11:20 +0200 Subject: [PATCH] Change default appcache manifest file extension This commit changes the default file extension configured with `AppCacheManifestTranformer`. This ResourceTransformer was previously considering `.manifest` files by default, but this has been changed in the official spec to `appcache`, in order not to clash with Microsoft's unregistered application/manifest type. Issue: SPR-14687 --- .../reactive/resource/AppCacheManifestTransformer.java | 8 ++++---- .../resource/AppCacheManifestTransformerTests.java | 4 ++-- .../resource/test/{error.manifest => error.appcache} | 0 .../resource/test/{appcache.manifest => test.appcache} | 0 .../web/servlet/resource/AppCacheManifestTransformer.java | 8 ++++---- .../resource/AppCacheManifestTransformerTests.java | 4 ++-- .../resource/test/{error.manifest => error.appcache} | 0 .../resource/test/{appcache.manifest => test.appcache} | 0 8 files changed, 12 insertions(+), 12 deletions(-) rename spring-web-reactive/src/test/resources/org/springframework/web/reactive/resource/test/{error.manifest => error.appcache} (100%) rename spring-web-reactive/src/test/resources/org/springframework/web/reactive/resource/test/{appcache.manifest => test.appcache} (100%) rename spring-webmvc/src/test/resources/org/springframework/web/servlet/resource/test/{error.manifest => error.appcache} (100%) rename spring-webmvc/src/test/resources/org/springframework/web/servlet/resource/test/{appcache.manifest => test.appcache} (100%) diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/resource/AppCacheManifestTransformer.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/resource/AppCacheManifestTransformer.java index 6c8afe5ee1..5b6530248b 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/resource/AppCacheManifestTransformer.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/resource/AppCacheManifestTransformer.java @@ -48,7 +48,7 @@ import org.springframework.web.server.ServerWebExchange; * of the manifest in order to trigger an appcache reload in the browser. * * - * All files that have the ".manifest" file extension, or the extension given + * All files that have the ".appcache" file extension, or the extension given * in the constructor, will be transformed by this class. * *

This hash is computed using the content of the appcache manifest and the @@ -58,7 +58,7 @@ import org.springframework.web.server.ServerWebExchange; * @author Rossen Stoyanchev * @author Brian Clozel * @since 5.0 - * @see HTML5 offline applications spec + * @see HTML5 offline applications spec */ public class AppCacheManifestTransformer extends ResourceTransformerSupport { @@ -75,10 +75,10 @@ public class AppCacheManifestTransformer extends ResourceTransformerSupport { /** - * Create an AppCacheResourceTransformer that transforms files with extension ".manifest". + * Create an AppCacheResourceTransformer that transforms files with extension ".appcache". */ public AppCacheManifestTransformer() { - this("manifest"); + this("appcache"); } /** diff --git a/spring-web-reactive/src/test/java/org/springframework/web/reactive/resource/AppCacheManifestTransformerTests.java b/spring-web-reactive/src/test/java/org/springframework/web/reactive/resource/AppCacheManifestTransformerTests.java index d3809b3865..31b76afdb3 100644 --- a/spring-web-reactive/src/test/java/org/springframework/web/reactive/resource/AppCacheManifestTransformerTests.java +++ b/spring-web-reactive/src/test/java/org/springframework/web/reactive/resource/AppCacheManifestTransformerTests.java @@ -82,7 +82,7 @@ public class AppCacheManifestTransformerTests { @Test public void syntaxErrorInManifest() throws Exception { - Resource resource = new ClassPathResource("test/error.manifest", getClass()); + Resource resource = new ClassPathResource("test/error.appcache", getClass()); given(this.chain.transform(this.exchange, resource)).willReturn(resource); Resource result = this.transformer.transform(this.exchange, resource, this.chain); @@ -105,7 +105,7 @@ public class AppCacheManifestTransformerTests { transformers.add(new CssLinkResourceTransformer()); this.chain = new DefaultResourceTransformerChain(resolverChain, transformers); - Resource resource = new ClassPathResource("test/appcache.manifest", getClass()); + Resource resource = new ClassPathResource("test/test.appcache", getClass()); Resource result = this.transformer.transform(this.exchange, resource, this.chain); byte[] bytes = FileCopyUtils.copyToByteArray(result.getInputStream()); String content = new String(bytes, "UTF-8"); diff --git a/spring-web-reactive/src/test/resources/org/springframework/web/reactive/resource/test/error.manifest b/spring-web-reactive/src/test/resources/org/springframework/web/reactive/resource/test/error.appcache similarity index 100% rename from spring-web-reactive/src/test/resources/org/springframework/web/reactive/resource/test/error.manifest rename to spring-web-reactive/src/test/resources/org/springframework/web/reactive/resource/test/error.appcache diff --git a/spring-web-reactive/src/test/resources/org/springframework/web/reactive/resource/test/appcache.manifest b/spring-web-reactive/src/test/resources/org/springframework/web/reactive/resource/test/test.appcache similarity index 100% rename from spring-web-reactive/src/test/resources/org/springframework/web/reactive/resource/test/appcache.manifest rename to spring-web-reactive/src/test/resources/org/springframework/web/reactive/resource/test/test.appcache diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/AppCacheManifestTransformer.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/AppCacheManifestTransformer.java index 4edcfdb094..f4e3a48622 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/AppCacheManifestTransformer.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/AppCacheManifestTransformer.java @@ -47,7 +47,7 @@ import org.springframework.util.StringUtils; * thus changing the content of the manifest in order to trigger an appcache reload in the browser. * * - * All files that have the ".manifest" file extension, or the extension given in the constructor, + * All files that have the ".appcache" file extension, or the extension given in the constructor, * will be transformed by this class. * *

This hash is computed using the content of the appcache manifest and the content of the linked resources; @@ -55,7 +55,7 @@ import org.springframework.util.StringUtils; * * @author Brian Clozel * @since 4.1 - * @see HTML5 offline applications spec + * @see HTML5 offline applications spec */ public class AppCacheManifestTransformer extends ResourceTransformerSupport { @@ -72,10 +72,10 @@ public class AppCacheManifestTransformer extends ResourceTransformerSupport { /** - * Create an AppCacheResourceTransformer that transforms files with extension ".manifest". + * Create an AppCacheResourceTransformer that transforms files with extension ".appcache". */ public AppCacheManifestTransformer() { - this("manifest"); + this("appcache"); } /** diff --git a/spring-webmvc/src/test/java/org/springframework/web/servlet/resource/AppCacheManifestTransformerTests.java b/spring-webmvc/src/test/java/org/springframework/web/servlet/resource/AppCacheManifestTransformerTests.java index 5a197f4bcd..59f0a72ae8 100644 --- a/spring-webmvc/src/test/java/org/springframework/web/servlet/resource/AppCacheManifestTransformerTests.java +++ b/spring-webmvc/src/test/java/org/springframework/web/servlet/resource/AppCacheManifestTransformerTests.java @@ -66,7 +66,7 @@ public class AppCacheManifestTransformerTests { @Test public void syntaxErrorInManifest() throws Exception { - Resource resource = new ClassPathResource("test/error.manifest", getClass()); + Resource resource = new ClassPathResource("test/error.appcache", getClass()); given(this.chain.transform(this.request, resource)).willReturn(resource); Resource result = this.transformer.transform(this.request, resource, this.chain); @@ -89,7 +89,7 @@ public class AppCacheManifestTransformerTests { transformers.add(new CssLinkResourceTransformer()); this.chain = new DefaultResourceTransformerChain(resolverChain, transformers); - Resource resource = new ClassPathResource("test/appcache.manifest", getClass()); + Resource resource = new ClassPathResource("test/test.appcache", getClass()); Resource result = this.transformer.transform(this.request, resource, this.chain); byte[] bytes = FileCopyUtils.copyToByteArray(result.getInputStream()); String content = new String(bytes, "UTF-8"); diff --git a/spring-webmvc/src/test/resources/org/springframework/web/servlet/resource/test/error.manifest b/spring-webmvc/src/test/resources/org/springframework/web/servlet/resource/test/error.appcache similarity index 100% rename from spring-webmvc/src/test/resources/org/springframework/web/servlet/resource/test/error.manifest rename to spring-webmvc/src/test/resources/org/springframework/web/servlet/resource/test/error.appcache diff --git a/spring-webmvc/src/test/resources/org/springframework/web/servlet/resource/test/appcache.manifest b/spring-webmvc/src/test/resources/org/springframework/web/servlet/resource/test/test.appcache similarity index 100% rename from spring-webmvc/src/test/resources/org/springframework/web/servlet/resource/test/appcache.manifest rename to spring-webmvc/src/test/resources/org/springframework/web/servlet/resource/test/test.appcache