Inline initialization / constructor Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/deeb4535 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/deeb4535 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/deeb4535
Branch: refs/heads/master Commit: deeb45355c8bad0e2b56a063e2275c87522d8709 Parents: d0864f1 Author: klopfdreh <klopfdreh@tobiass-mbp> Authored: Wed Feb 4 16:55:04 2015 +0100 Committer: klopfdreh <klopfdreh@tobiass-mbp> Committed: Wed Feb 4 16:55:04 2015 +0100 ---------------------------------------------------------------------- .../wicket/resource/CompositeCssCompressor.java | 47 +++++++++++------- .../resource/CompositeJavaScriptCompressor.java | 51 +++++++++++++------- 2 files changed, 62 insertions(+), 36 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/deeb4535/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 7b3c6e8..bb61687 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 @@ -17,12 +17,13 @@ package org.apache.wicket.resource; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import org.apache.wicket.css.ICssCompressor; /** - * Used to apply several {@link ICssCompressor} to the css compression.<br> + * Used to apply several {@link ICssCompressor} to the CSS compression.<br> * <br> * Usage: * @@ -34,6 +35,8 @@ import org.apache.wicket.css.ICssCompressor; * * this.getResourceSettings().setCssCompressor(compositeCssCompressor); * </pre> + * The compressors can also be given as constructor arguments. + * * @since 6.20.0 * @author Tobias Soloschenko * @@ -42,27 +45,39 @@ public class CompositeCssCompressor implements ICssCompressor { /* Compressors to compress the CSS content */ - private List<ICssCompressor> compressors; + private List<ICssCompressor> compressors = new ArrayList<>(); + + /** + * Initializes an empty composite CSS compressor + */ + public CompositeCssCompressor() + { + } + + /** + * Initializes the composite CSS compressor with the given {@link ICssCompressor} + * + * @param compressors + * several {@link ICssCompressor} the composite CSS compressor is initialized with + */ + public CompositeCssCompressor(ICssCompressor... compressors) + { + this.compressors = Arrays.asList(compressors); + } /** - * Compresses the given original content in the order of compressors. + * Compresses the given original content in the order of compressors. If no compressor has been + * given the original content is going to be returned. */ @Override public String compress(String original) { - if (compressors != null) + String compressed = original; + for (ICssCompressor compressor : compressors) { - String compressed = original; - for (ICssCompressor compressor : compressors) - { - compressed = compressor.compress(compressed); - } - return compressed; - } - else - { - return original; + compressed = compressor.compress(compressed); } + return compressed; } /** @@ -73,10 +88,6 @@ public class CompositeCssCompressor implements ICssCompressor */ public List<ICssCompressor> getCompressors() { - if (compressors == null) - { - compressors = new ArrayList<>(); - } return compressors; } } http://git-wip-us.apache.org/repos/asf/wicket/blob/deeb4535/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 13d5efc..cb1d101 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 @@ -17,6 +17,7 @@ package org.apache.wicket.resource; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import org.apache.wicket.javascript.IJavaScriptCompressor; @@ -34,6 +35,8 @@ import org.apache.wicket.javascript.IJavaScriptCompressor; * * this.getResourceSettings().setJavaScriptCompressor(compositeJavaScriptCompressor); * </pre> + * The compressors can also be given as constructor arguments. + * * @since 6.20.0 * @author Tobias Soloschenko * @@ -42,38 +45,50 @@ public class CompositeJavaScriptCompressor implements IJavaScriptCompressor { /* Compressors to compress javascript content */ - private List<IJavaScriptCompressor> compressors; + private List<IJavaScriptCompressor> compressors = new ArrayList<>(); + + /** + * Initializes an empty composite javascript compressor + */ + public CompositeJavaScriptCompressor() + { + } + + /** + * Initializes the composite javascript compressor with the given {@link IJavaScriptCompressor} + * + * @param compressors + * several {@link IJavaScriptCompressor} the composite javascript compressor is + * initialized with + */ + public CompositeJavaScriptCompressor(IJavaScriptCompressor... compressors) + { + this.compressors = Arrays.asList(compressors); + } + /** + * Compresses the given original content in the order of compressors. If no compressor has been + * given the original content is going to be returned. + */ @Override public String compress(String original) { - if (compressors != null) + String compressed = original; + for (IJavaScriptCompressor compressor : compressors) { - String compressed = original; - for (IJavaScriptCompressor compressor : compressors) - { - compressed = compressor.compress(compressed); - } - return compressed; - } - else - { - return original; + compressed = compressor.compress(compressed); } + return compressed; } /** - * Gets a list of {@link IJavaScriptCompressor} to be used for javascript compression. They are applied in the - * order of the List. + * Gets a list of {@link IJavaScriptCompressor} to be used for javascript compression. They are + * applied in the order of the List. * * @return A list of {@link IJavaScriptCompressor} to be used for javascript compression. */ public List<IJavaScriptCompressor> getCompressors() { - if (compressors == null) - { - compressors = new ArrayList<>(); - } return compressors; } }