You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by jk...@apache.org on 2014/05/27 17:44:01 UTC
git commit: TAP5-2264: disable gzip compression for asset/module
requests when the InternalConstants.SUPPRESS_COMPRESSION request attribute is
set
Repository: tapestry-5
Updated Branches:
refs/heads/master b553edf0c -> 339288142
TAP5-2264: disable gzip compression for asset/module requests when the InternalConstants.SUPPRESS_COMPRESSION request attribute is set
Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo
Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/33928814
Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/33928814
Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/33928814
Branch: refs/heads/master
Commit: 3392881422f1f28bee7db38a158ec8d29fd5254b
Parents: b553edf
Author: Jochen Kemnade <jo...@eddyson.de>
Authored: Tue May 27 17:42:23 2014 +0200
Committer: Jochen Kemnade <jo...@eddyson.de>
Committed: Tue May 27 17:42:23 2014 +0200
----------------------------------------------------------------------
.../ResponseCompressionAnalyzerImpl.java | 7 +++++++
.../ResponseCompressionAnalyzerTest.groovy | 19 +++++++++++++++++++
2 files changed, 26 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/33928814/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ResponseCompressionAnalyzerImpl.java
----------------------------------------------------------------------
diff --git a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ResponseCompressionAnalyzerImpl.java b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ResponseCompressionAnalyzerImpl.java
index c616318..1fd4072 100644
--- a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ResponseCompressionAnalyzerImpl.java
+++ b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ResponseCompressionAnalyzerImpl.java
@@ -17,6 +17,7 @@ package org.apache.tapestry5.internal.services;
import javax.servlet.http.HttpServletRequest;
import org.apache.tapestry5.SymbolConstants;
+import org.apache.tapestry5.internal.InternalConstants;
import org.apache.tapestry5.internal.TapestryInternalUtils;
import org.apache.tapestry5.ioc.annotations.Symbol;
import org.apache.tapestry5.services.ResponseCompressionAnalyzer;
@@ -52,6 +53,12 @@ public class ResponseCompressionAnalyzerImpl implements ResponseCompressionAnaly
return false;
}
+ // TAP5-2264:
+ if (request.getAttribute(InternalConstants.SUPPRESS_COMPRESSION) != null)
+ {
+ return false;
+ }
+
String supportedEncodings = request.getHeader("Accept-Encoding");
if (supportedEncodings == null)
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/33928814/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/ResponseCompressionAnalyzerTest.groovy
----------------------------------------------------------------------
diff --git a/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/ResponseCompressionAnalyzerTest.groovy b/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/ResponseCompressionAnalyzerTest.groovy
index bdd56d5..589a5db 100644
--- a/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/ResponseCompressionAnalyzerTest.groovy
+++ b/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/ResponseCompressionAnalyzerTest.groovy
@@ -1,5 +1,6 @@
package org.apache.tapestry5.internal.services
+import org.apache.tapestry5.internal.InternalConstants;
import org.apache.tapestry5.ioc.test.TestBase
import org.apache.tapestry5.services.ResponseCompressionAnalyzer
import org.testng.annotations.Test
@@ -23,4 +24,22 @@ class ResponseCompressionAnalyzerTest extends TestBase {
verify()
}
+
+ @Test
+ //TAP5-2264
+ void "InternalConstants.SUPPRESS_COMPRESSION attribute disables gzip compression"() {
+
+ HttpServletRequest request = newMock(HttpServletRequest)
+
+ expect(request.getProtocol()).andReturn("HTTP/1.1").once()
+ expect(request.getAttribute(InternalConstants.SUPPRESS_COMPRESSION)).andReturn("yes").once()
+
+ replay()
+
+ ResponseCompressionAnalyzer rca = new ResponseCompressionAnalyzerImpl(request, true, null)
+
+ assert rca.isGZipSupported() == false
+
+ verify()
+ }
}