package net.rrm.ehour.ui.common.report;
import net.rrm.ehour.ui.common.report.excel.ExcelRequestHandler;
import org.apache.wicket.markup.html.link.Link;
// merge with xlsxlink
public abstract class ExcelReportLink extends Link<Void> {
private static final String FILE_EXTENSION = "xlsx";
public ExcelReportLink(String id) {
super(id);
}
@Override
public void onClick() {
ExcelReport reportBuilder = createReportBuilder();
String filename = String.format("%s.%s", reportBuilder.getFilenameWihoutSuffix(), FILE_EXTENSION);
getRequestCycle().scheduleRequestHandlerAfterCurrent(new ExcelRequestHandler(filename, reportBuilder, ExcelRequestHandler.Format.XLSX));
}
protected abstract ExcelReport createReportBuilder();
}