Hi Martin,
I've just noticed that my commit made it into the 9.0.0-M1 release.
I remember Andrea releasing the first milestone around the same time I
pushed my changes.
Sven
Am 18.04.19 um 10:00 schrieb Martin Grigorov:
Hi Sven,
There is no commit in master branch.
Did you forget to push it ? Or maybe the push failed for some reason.
On Wed, Apr 17, 2019 at 11:23 PM <[email protected]> wrote:
This is an automated email from the ASF dual-hosted git repository.
svenmeier pushed a commit to branch wicket-8.x
in repository https://gitbox.apache.org/repos/asf/wicket.git
The following commit(s) were added to refs/heads/wicket-8.x by this push:
new 8a73a9e WICKET-6655 set cacheDuration
8a73a9e is described below
commit 8a73a9e87525b7cd2d2589f7b490f927084587f5
Author: Sven Meier <[email protected]>
AuthorDate: Tue Apr 16 20:27:51 2019 +0200
WICKET-6655 set cacheDuration
and fileName lazily and wrap models
---
.../repeater/data/table/export/ExportToolbar.java | 31
++++++++++++++++++----
1 file changed, 26 insertions(+), 5 deletions(-)
diff --git
a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/export/ExportToolbar.java
b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/export/ExportToolbar.java
index faad10e..1763848 100644
---
a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/export/ExportToolbar.java
+++
b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/export/ExportToolbar.java
@@ -39,6 +39,7 @@ import org.apache.wicket.util.lang.Args;
import org.apache.wicket.util.resource.AbstractResourceStreamWriter;
import org.apache.wicket.util.resource.IResourceStream;
import org.apache.wicket.util.resource.IResourceStreamWriter;
+import org.apache.wicket.util.time.Duration;
/**
* A toolbar that provides links to download the data represented by all
{@link IExportableColumn}s in the table
@@ -102,8 +103,9 @@ public class ExportToolbar extends AbstractToolbar
public ExportToolbar(DataTable<?, ?> table, IModel<String>
messageModel, IModel<String> fileNameModel)
{
super(table);
- this.messageModel = messageModel;
- this.fileNameModel = fileNameModel;
+
+ setMessageModel(messageModel);
+ setFileNameModel(fileNameModel);
}
/**
@@ -115,7 +117,7 @@ public class ExportToolbar extends AbstractToolbar
*/
public ExportToolbar setMessageModel(IModel<String> messageModel)
{
- this.messageModel = Args.notNull(messageModel,
"messageModel");
+ this.messageModel = wrap(Args.notNull(messageModel,
"messageModel"));
return this;
}
@@ -128,7 +130,7 @@ public class ExportToolbar extends AbstractToolbar
*/
public ExportToolbar setFileNameModel(IModel<String> fileNameModel)
{
- this.fileNameModel = Args.notNull(fileNameModel,
"fileNameModel");
+ this.fileNameModel = wrap(Args.notNull(fileNameModel,
"fileNameModel"));
return this;
}
@@ -201,17 +203,36 @@ public class ExportToolbar extends AbstractToolbar
{
IResource resource = new ResourceStreamResource()
{
+ /**
+ * Set fileName and cacheDuration lazily
+ */
+ public void respond(Attributes attributes) {
+ setFileName(fileNameModel.getObject() +
"." + dataExporter.getFileNameExtension());
+
setCacheDuration(ExportToolbar.this.getCacheDuration());
+
+ super.respond(attributes);
+ }
+
@Override
protected IResourceStream
getResourceStream(Attributes attributes)
{
return new
DataExportResourceStreamWriter(dataExporter, getTable());
}
- }.setFileName(fileNameModel.getObject() + "." +
dataExporter.getFileNameExtension());
+ };
return new ResourceLink<Void>(componentId, resource)
.setBody(dataExporter.getDataFormatNameModel());
}
+ /**
+ * How long should the export be cached.
+ *
+ * @return default is {@link Duration#NONE}
+ */
+ protected Duration getCacheDuration() {
+ return Duration.NONE;
+ }
+
@Override
protected void onConfigure()
{