Author: jdonnerstag
Date: Fri Jun 26 16:35:52 2009
New Revision: 788756
URL: http://svn.apache.org/viewvc?rev=788756&view=rev
Log:
WebResource#getCacheDuration() is not configurable
added global configuration in IResourceSetting
Issue: WICKET-2323
Modified:
wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/WebResource.java
wicket/trunk/wicket/src/main/java/org/apache/wicket/settings/IResourceSettings.java
wicket/trunk/wicket/src/main/java/org/apache/wicket/settings/Settings.java
Modified:
wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/WebResource.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/WebResource.java?rev=788756&r1=788755&r2=788756&view=diff
==============================================================================
---
wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/WebResource.java
(original)
+++
wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/WebResource.java
Fri Jun 26 16:35:52 2009
@@ -16,6 +16,7 @@
*/
package org.apache.wicket.markup.html;
+import org.apache.wicket.Application;
import org.apache.wicket.Resource;
import org.apache.wicket.Response;
import org.apache.wicket.protocol.http.WebResponse;
@@ -28,10 +29,6 @@
*/
public abstract class WebResource extends Resource
{
-
- /**
- *
- */
private static final long serialVersionUID = 1L;
/**
@@ -89,9 +86,10 @@
* classes.
*
* @return The cache duration in seconds
+ * @TODO change to long in 1.5
*/
protected int getCacheDuration()
{
- return 3600;
+ return
(int)Application.get().getResourceSettings().getDefaultCacheDuration();
}
}
Modified:
wicket/trunk/wicket/src/main/java/org/apache/wicket/settings/IResourceSettings.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/settings/IResourceSettings.java?rev=788756&r1=788755&r2=788756&view=diff
==============================================================================
---
wicket/trunk/wicket/src/main/java/org/apache/wicket/settings/IResourceSettings.java
(original)
+++
wicket/trunk/wicket/src/main/java/org/apache/wicket/settings/IResourceSettings.java
Fri Jun 26 16:35:52 2009
@@ -119,6 +119,13 @@
void addStringResourceLoader(final int index, final
IStringResourceLoader loader);
/**
+ * Get the the default cache duration (3600 secs == 1hr) for
WebResource.
+ *
+ * @return cache duration
+ */
+ int getDefaultCacheDuration();
+
+ /**
* Whether to disable gzip compression for resources. You need this on
SAP, which gzips things
* twice.
*
@@ -207,6 +214,14 @@
boolean getUseDefaultOnMissingResource();
/**
+ * Set the the default cache duration for WebResource.
+ *
+ * @param defaultDuration
+ * default cache duration in seconds
+ */
+ void setDefaultCacheDuration(int defaultDuration);
+
+ /**
* Sets whether to disable gzip compression for resources. You need to
set this on some SAP
* versions, which gzip things twice.
*
Modified:
wicket/trunk/wicket/src/main/java/org/apache/wicket/settings/Settings.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/settings/Settings.java?rev=788756&r1=788755&r2=788756&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/settings/Settings.java
(original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/settings/Settings.java
Fri Jun 26 16:35:52 2009
@@ -329,11 +329,12 @@
/** */
private Bytes defaultMaximumUploadSize = Bytes.MAX;
- /**
- * escape string for '..' within resource keys
- */
+ /** escape string for '..' within resource keys */
private CharSequence parentFolderPlaceholder = null;
+ /** Default cache duration */
+ private int defaultCacheDuration = 3600;
+
/**
* Create the application settings, carrying out any necessary
initializations.
*
@@ -1519,4 +1520,23 @@
return developmentUtilitiesEnabled;
}
+ /**
+ * @see
org.apache.wicket.settings.IResourceSettings#getDefaultCacheDuration()
+ */
+ public final int getDefaultCacheDuration()
+ {
+ return defaultCacheDuration;
+ }
+
+ /**
+ * @see
org.apache.wicket.settings.IResourceSettings#setDefaultCacheDuration(long)
+ */
+ public final void setDefaultCacheDuration(int defaultDuration)
+ {
+ if (defaultDuration < 0)
+ {
+ throw new IllegalArgumentException("Parameter
'defaultDuration' must not be < 0");
+ }
+ defaultCacheDuration = defaultDuration;
+ }
}