WICKET-5827 Allow to apply multiple Javascript / CSS compressors Simplify the API of CompositeJavaScriptCompressor/CompositeCssCompressor. No need to expose the list.
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/b87b4591 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/b87b4591 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/b87b4591 Branch: refs/heads/master Commit: b87b4591bf83940f7de75d98278cb6030f6d4e56 Parents: aba8360 Author: Martin Tzvetanov Grigorov <mgrigo...@apache.org> Authored: Thu Feb 5 23:33:07 2015 +0200 Committer: Martin Tzvetanov Grigorov <mgrigo...@apache.org> Committed: Thu Feb 5 23:33:07 2015 +0200 ---------------------------------------------------------------------- .../wicket/resource/CompositeCssCompressor.java | 21 ++++++++++---------- .../resource/CompositeJavaScriptCompressor.java | 19 +++++++++--------- 2 files changed, 19 insertions(+), 21 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/b87b4591/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 a288596..6756491 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 @@ -30,8 +30,8 @@ import org.apache.wicket.css.ICssCompressor; * <pre> * CompositeCssCompressor compositeCssCompressor = new CompositeCssCompressor(); * - * compositeCssCompressor.getCompressors().add(new MyCssCompressor()); - * compositeCssCompressor.getCompressors().add(new AnotherCssCompressor()); + * compositeCssCompressor.add(new MyCssCompressor()); + * compositeCssCompressor.add(new AnotherCssCompressor()); * * this.getResourceSettings().setCssCompressor(compositeCssCompressor); * </pre> @@ -43,15 +43,14 @@ import org.apache.wicket.css.ICssCompressor; */ public class CompositeCssCompressor implements ICssCompressor { - /* Compressors to compress the CSS content */ private final List<ICssCompressor> compressors = new ArrayList<>(); /** - * Initializes the composite CSS compressor with the given {@link ICssCompressor} + * Initializes the composite CSS compressor with the given {@link ICssCompressor}(s) * * @param compressors - * several {@link ICssCompressor} the composite CSS compressor is initialized with + * The {@link ICssCompressor}(s) this composite CSS compressor is initialized with */ public CompositeCssCompressor(ICssCompressor... compressors) { @@ -74,13 +73,13 @@ public class CompositeCssCompressor implements ICssCompressor } /** - * Gets a list of {@link ICssCompressor} to be used for CSS compression. They are applied in the - * order of the List. - * - * @return A list of {@link ICssCompressor} to be used for CSS compression. + * Adds a ICssCompressor to the list of delegates. + * + * @return {@code this} instance, for chaining */ - public List<ICssCompressor> getCompressors() + public CompositeCssCompressor add(ICssCompressor compressor) { - return compressors; + compressors.add(compressor); + return this; } } http://git-wip-us.apache.org/repos/asf/wicket/blob/b87b4591/wicket-core/src/main/java/org/apache/wicket/resource/CompositeJavaScriptCompressor.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/resource/CompositeJavaScriptCompressor.java b/wicket-core/src/main/java/org/apache/wicket/resource/CompositeJavaScriptCompressor.java index c1888e2..d0f2ffb 100644 --- a/wicket-core/src/main/java/org/apache/wicket/resource/CompositeJavaScriptCompressor.java +++ b/wicket-core/src/main/java/org/apache/wicket/resource/CompositeJavaScriptCompressor.java @@ -30,8 +30,8 @@ import org.apache.wicket.javascript.IJavaScriptCompressor; * <pre> * CompositeJavaScriptCompressor compositeJavaScriptCompressor = new CompositeJavaScriptCompressor(); * - * compositeJavaScriptCompressor.getCompressors().add(new MyJavaScriptCompressor()); - * compositeJavaScriptCompressor.getCompressors().add(new AnotherJavaScriptCompressor()); + * compositeJavaScriptCompressor.add(new MyJavaScriptCompressor()); + * compositeJavaScriptCompressor.add(new AnotherJavaScriptCompressor()); * * this.getResourceSettings().setJavaScriptCompressor(compositeJavaScriptCompressor); * </pre> @@ -43,15 +43,14 @@ import org.apache.wicket.javascript.IJavaScriptCompressor; */ public class CompositeJavaScriptCompressor implements IJavaScriptCompressor { - /* Compressors to compress javascript content */ private final List<IJavaScriptCompressor> compressors = new ArrayList<>(); /** - * Initializes the composite javascript compressor with the given {@link IJavaScriptCompressor} + * Initializes the composite javascript compressor with the given {@link IJavaScriptCompressor}(s) * * @param compressors - * several {@link IJavaScriptCompressor} the composite javascript compressor is + * The {@link IJavaScriptCompressor}(s) this composite javascript compressor is * initialized with */ public CompositeJavaScriptCompressor(IJavaScriptCompressor... compressors) @@ -75,13 +74,13 @@ public class CompositeJavaScriptCompressor implements IJavaScriptCompressor } /** - * Gets a list of {@link IJavaScriptCompressor} to be used for javascript compression. They are - * applied in the order of the List. + * Adds a IJavaScriptCompressor to the list of delegates. * - * @return A list of {@link IJavaScriptCompressor} to be used for javascript compression. + * @return {@code this} instance, for chaining */ - public List<IJavaScriptCompressor> getCompressors() + public CompositeJavaScriptCompressor add(IJavaScriptCompressor compressor) { - return compressors; + compressors.add(compressor); + return this; } }