[2/2] wicket git commit: WICKET-5827 Allow to apply multiple Javascript / CSS compressors
WICKET-5827 Allow to apply multiple Javascript / CSS compressors Allow IJavaScriptCompressors to be IScopeAwareTextResourceProcessor too (cherry picked from commit 1a4844f5c8da09d0055909c436fa20a9fb292158) Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/dd8dca3e Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/dd8dca3e Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/dd8dca3e Branch: refs/heads/master Commit: dd8dca3e5489ae5e114df6ffc7a1726039535020 Parents: 5d1b3b1 Author: Martin Tzvetanov Grigorov Authored: Mon Feb 16 15:56:14 2015 +0200 Committer: Martin Tzvetanov Grigorov Committed: Mon Feb 16 15:59:02 2015 +0200 -- .../resource/JavaScriptPackageResource.java | 25 +--- .../wicket/resource/CompositeCssCompressor.java | 1 - .../resource/CompositeJavaScriptCompressor.java | 24 +++ 3 files changed, 36 insertions(+), 14 deletions(-) -- http://git-wip-us.apache.org/repos/asf/wicket/blob/dd8dca3e/wicket-core/src/main/java/org/apache/wicket/request/resource/JavaScriptPackageResource.java -- diff --git a/wicket-core/src/main/java/org/apache/wicket/request/resource/JavaScriptPackageResource.java b/wicket-core/src/main/java/org/apache/wicket/request/resource/JavaScriptPackageResource.java index 210fee1..49f393a 100644 --- a/wicket-core/src/main/java/org/apache/wicket/request/resource/JavaScriptPackageResource.java +++ b/wicket-core/src/main/java/org/apache/wicket/request/resource/JavaScriptPackageResource.java @@ -20,11 +20,12 @@ import java.util.Locale; import org.apache.wicket.Application; import org.apache.wicket.javascript.IJavaScriptCompressor; +import org.apache.wicket.resource.IScopeAwareTextResourceProcessor; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** - * Package resource for javascript files. It strips comments and whitespace from javascript. + * Package resource for javascript files. */ public class JavaScriptPackageResource extends PackageResource { @@ -32,20 +33,18 @@ public class JavaScriptPackageResource extends PackageResource private static final Logger log = LoggerFactory.getLogger(JavaScriptPackageResource.class); + private final String name; + /** * Construct. -* -* @param scope -* @param name -* @param locale -* @param style -* @param variation */ public JavaScriptPackageResource(Class scope, String name, Locale locale, String style, String variation) { super(scope, name, locale, style, variation); + this.name = name; + // JS resources can be compressed if there is configured IJavaScriptCompressor setCompress(true); } @@ -62,7 +61,17 @@ public class JavaScriptPackageResource extends PackageResource try { String nonCompressed = new String(processedResponse, "UTF-8"); - return compressor.compress(nonCompressed).getBytes("UTF-8"); + String output; + if (compressor instanceof IScopeAwareTextResourceProcessor) + { + IScopeAwareTextResourceProcessor scopeAwareProcessor = (IScopeAwareTextResourceProcessor)compressor; + output = scopeAwareProcessor.process(nonCompressed, getScope(), name); + } + else + { + output = compressor.compress(nonCompressed); + } + return output.getBytes(); } catch (Exception e) { http://git-wip-us.apache.org/repos/asf/wicket/blob/dd8dca3e/wicket-core/src/main/java/org/apache/wicket/resource/CompositeCssCompressor.java -- diff --git a/wicket-core/src/main/java/org/apache/wicket/resource/CompositeCssCompressor.java b/wicket-core/src/main/java/org/apache/wicket/resource/CompositeCssCompressor.java index 5419516..81f8096 100644 --- a/wicket-core/src/main/java/org/apache/wicket/resource/CompositeCssCompressor.java +++ b/wicket-core/src/main/java/org/apache/wicket/resource/CompositeCssCompressor.java @@ -39,7 +39,6 @@ import org.apache.wicket.css.ICssCompressor; * * @since 6.20.0 * @author Tobias Soloschenko - * */ public class CompositeCssCompressor implements IScopeAwareTextResourceProcessor,
[2/2] wicket git commit: WICKET-5827 Allow to apply multiple Javascript / CSS compressors
WICKET-5827 Allow to apply multiple Javascript / CSS compressors Allow IJavaScriptCompressors to be IScopeAwareTextResourceProcessor too Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/1a4844f5 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/1a4844f5 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/1a4844f5 Branch: refs/heads/wicket-6.x Commit: 1a4844f5c8da09d0055909c436fa20a9fb292158 Parents: c92ad13 Author: Martin Tzvetanov Grigorov Authored: Mon Feb 16 15:56:14 2015 +0200 Committer: Martin Tzvetanov Grigorov Committed: Mon Feb 16 15:56:14 2015 +0200 -- .../resource/JavaScriptPackageResource.java | 25 +-- .../wicket/resource/CompositeCssCompressor.java | 3 +-- .../resource/CompositeJavaScriptCompressor.java | 26 +++- 3 files changed, 38 insertions(+), 16 deletions(-) -- http://git-wip-us.apache.org/repos/asf/wicket/blob/1a4844f5/wicket-core/src/main/java/org/apache/wicket/request/resource/JavaScriptPackageResource.java -- diff --git a/wicket-core/src/main/java/org/apache/wicket/request/resource/JavaScriptPackageResource.java b/wicket-core/src/main/java/org/apache/wicket/request/resource/JavaScriptPackageResource.java index 210fee1..49f393a 100644 --- a/wicket-core/src/main/java/org/apache/wicket/request/resource/JavaScriptPackageResource.java +++ b/wicket-core/src/main/java/org/apache/wicket/request/resource/JavaScriptPackageResource.java @@ -20,11 +20,12 @@ import java.util.Locale; import org.apache.wicket.Application; import org.apache.wicket.javascript.IJavaScriptCompressor; +import org.apache.wicket.resource.IScopeAwareTextResourceProcessor; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** - * Package resource for javascript files. It strips comments and whitespace from javascript. + * Package resource for javascript files. */ public class JavaScriptPackageResource extends PackageResource { @@ -32,20 +33,18 @@ public class JavaScriptPackageResource extends PackageResource private static final Logger log = LoggerFactory.getLogger(JavaScriptPackageResource.class); + private final String name; + /** * Construct. -* -* @param scope -* @param name -* @param locale -* @param style -* @param variation */ public JavaScriptPackageResource(Class scope, String name, Locale locale, String style, String variation) { super(scope, name, locale, style, variation); + this.name = name; + // JS resources can be compressed if there is configured IJavaScriptCompressor setCompress(true); } @@ -62,7 +61,17 @@ public class JavaScriptPackageResource extends PackageResource try { String nonCompressed = new String(processedResponse, "UTF-8"); - return compressor.compress(nonCompressed).getBytes("UTF-8"); + String output; + if (compressor instanceof IScopeAwareTextResourceProcessor) + { + IScopeAwareTextResourceProcessor scopeAwareProcessor = (IScopeAwareTextResourceProcessor)compressor; + output = scopeAwareProcessor.process(nonCompressed, getScope(), name); + } + else + { + output = compressor.compress(nonCompressed); + } + return output.getBytes(); } catch (Exception e) { http://git-wip-us.apache.org/repos/asf/wicket/blob/1a4844f5/wicket-core/src/main/java/org/apache/wicket/resource/CompositeCssCompressor.java -- diff --git a/wicket-core/src/main/java/org/apache/wicket/resource/CompositeCssCompressor.java b/wicket-core/src/main/java/org/apache/wicket/resource/CompositeCssCompressor.java index 6e7b1c3..7d0dc8b 100644 --- a/wicket-core/src/main/java/org/apache/wicket/resource/CompositeCssCompressor.java +++ b/wicket-core/src/main/java/org/apache/wicket/resource/CompositeCssCompressor.java @@ -40,7 +40,6 @@ import org.apache.wicket.css.ICssCompressor; * * @since 6.20.0 * @author Tobias Soloschenko - * */ public class CompositeCssCompressor implements IScopeAwareTextResourceProcessor, ICssCompressor { @@ -98,4 +97,4 @@ public class CompositeCssCo