Updated Branches: refs/heads/master 361a57f99 -> 4b881a77f
WICKET-4721: allow all IStaticCacheableResource, not just PackageResources Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/4b881a77 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/4b881a77 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/4b881a77 Branch: refs/heads/master Commit: 4b881a77fd170c50390ffcbe9312b9b4b4e03086 Parents: 361a57f Author: Emond Papegaaij <papega...@apache.org> Authored: Wed Aug 22 10:24:13 2012 +0200 Committer: Emond Papegaaij <papega...@apache.org> Committed: Wed Aug 22 10:27:21 2012 +0200 ---------------------------------------------------------------------- .../resource/bundles/ConcatBundleResource.java | 14 +++++----- .../bundles/ConcatResourceBundleReference.java | 22 +------------- 2 files changed, 9 insertions(+), 27 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/4b881a77/wicket-core/src/main/java/org/apache/wicket/resource/bundles/ConcatBundleResource.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/resource/bundles/ConcatBundleResource.java b/wicket-core/src/main/java/org/apache/wicket/resource/bundles/ConcatBundleResource.java index 94f3675..52713f5 100644 --- a/wicket-core/src/main/java/org/apache/wicket/resource/bundles/ConcatBundleResource.java +++ b/wicket-core/src/main/java/org/apache/wicket/resource/bundles/ConcatBundleResource.java @@ -28,7 +28,6 @@ import javax.servlet.http.HttpServletResponse; import org.apache.wicket.markup.head.IReferenceHeaderItem; import org.apache.wicket.request.resource.AbstractResource; import org.apache.wicket.request.resource.IResource; -import org.apache.wicket.request.resource.PackageResource; import org.apache.wicket.request.resource.caching.IStaticCacheableResource; import org.apache.wicket.util.io.ByteArrayOutputStream; import org.apache.wicket.util.io.IOUtils; @@ -43,8 +42,8 @@ import org.slf4j.LoggerFactory; /** * A {@linkplain IResource resource} that concatenates several resources into one download. This - * resource can only bundle {@link PackageResource}s. The content type of the resource will be that - * of the first resource that specifies its content type. + * resource can only bundle {@link IStaticCacheableResource}s. The content type of the resource will + * be that of the first resource that specifies its content type. * * @author papegaaij */ @@ -64,7 +63,7 @@ public class ConcatBundleResource extends AbstractResource implements IStaticCac public ConcatBundleResource(List<? extends IReferenceHeaderItem> providedResources) { this.providedResources = Args.notNull(providedResources, "providedResources"); - this.cachingEnabled = true; + cachingEnabled = true; } @Override @@ -125,7 +124,8 @@ public class ConcatBundleResource extends AbstractResource implements IStaticCac List<IResourceStream> ret = new ArrayList<IResourceStream>(providedResources.size()); for (IReferenceHeaderItem curItem : providedResources) { - IResourceStream stream = ((PackageResource)curItem.getReference().getResource()).getResourceStream(); + IResourceStream stream = ((IStaticCacheableResource)curItem.getReference() + .getResource()).getCacheableResourceStream(); if (stream == null) return null; @@ -182,7 +182,7 @@ public class ConcatBundleResource extends AbstractResource implements IStaticCac public void setCachingEnabled(final boolean enabled) { - this.cachingEnabled = enabled; + cachingEnabled = enabled; } @Override @@ -191,7 +191,7 @@ public class ConcatBundleResource extends AbstractResource implements IStaticCac ArrayList<Serializable> key = new ArrayList<Serializable>(providedResources.size()); for (IReferenceHeaderItem curItem : providedResources) { - Serializable curKey = ((PackageResource)curItem.getReference().getResource()).getCacheKey(); + Serializable curKey = ((IStaticCacheableResource)curItem.getReference().getResource()).getCacheKey(); if (curKey == null) return null; key.add(curKey); http://git-wip-us.apache.org/repos/asf/wicket/blob/4b881a77/wicket-core/src/main/java/org/apache/wicket/resource/bundles/ConcatResourceBundleReference.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/resource/bundles/ConcatResourceBundleReference.java b/wicket-core/src/main/java/org/apache/wicket/resource/bundles/ConcatResourceBundleReference.java index f274a1a..679acb2 100644 --- a/wicket-core/src/main/java/org/apache/wicket/resource/bundles/ConcatResourceBundleReference.java +++ b/wicket-core/src/main/java/org/apache/wicket/resource/bundles/ConcatResourceBundleReference.java @@ -29,14 +29,13 @@ import org.apache.wicket.markup.head.IReferenceHeaderItem; import org.apache.wicket.request.resource.CssResourceReference; import org.apache.wicket.request.resource.IResource; import org.apache.wicket.request.resource.JavaScriptResourceReference; -import org.apache.wicket.request.resource.PackageResourceReference; import org.apache.wicket.request.resource.ResourceReference; +import org.apache.wicket.request.resource.caching.IStaticCacheableResource; import org.apache.wicket.util.lang.Args; -import org.apache.wicket.util.lang.Classes; /** * A resource bundle that automatically concatenates the given resources. These resources should all - * be of the same type (javascript or css) and all have {@link PackageResourceReference} (or + * be of the same type (javascript or css) and all have {@link IStaticCacheableResource} (or * subclasses). After creating the bundle, you normally have to register it in the * {@link ResourceBundles} under {@link Application#getResourceBundles()}. {@link ResourceBundles} * has two utility methods to create instances of this class: @@ -113,23 +112,6 @@ public class ConcatResourceBundleReference<T extends HeaderItem & IReferenceHead { super(scope, name, locale, style, variation); providedResources = Args.notNull(resources, "resources"); - checkProvidedResources(); - } - - /* check if all provided resources are package resources */ - private void checkProvidedResources() - { - for (T curProvidedResource : providedResources) - { - ResourceReference reference = curProvidedResource.getReference(); - if (!(reference instanceof CssResourceReference || reference instanceof JavaScriptResourceReference)) - { - throw new IllegalArgumentException( - "ConcatResourceBundleReference only works with CssResourceReference and JavaScriptResourceReference, " + - curProvidedResource + " provides a " + - Classes.simpleName(reference.getClass())); - } - } } @Override