use of org.olat.core.util.openxml.OpenXMLWorkbookResource in project openolat by klemens.
the class DefaultXlsTableExporter method export.
/**
* @see org.olat.core.gui.components.table.TableExporter#export(org.olat.core.gui.components.table.Table)
*/
@Override
public MediaResource export(final Table table) {
Translator translator = table.getTranslator();
int cdcnt = table.getColumnCount();
int rcnt = table.getRowCount();
String label = "TableExport_" + Formatter.formatDatetimeFilesystemSave(new Date(System.currentTimeMillis())) + ".xlsx";
return new OpenXMLWorkbookResource(label) {
@Override
protected void generate(OutputStream out) {
try (OpenXMLWorkbook workbook = new OpenXMLWorkbook(out, 1)) {
OpenXMLWorksheet sheet = workbook.nextWorksheet();
createHeader(table, translator, cdcnt, sheet, workbook);
createData(table, cdcnt, rcnt, sheet);
} catch (IOException e) {
log.error("", e);
}
}
};
}
use of org.olat.core.util.openxml.OpenXMLWorkbookResource in project openolat by klemens.
the class ChatLogHelper method logMediaResource.
public MediaResource logMediaResource(OLATResourceable ores, Locale locale) {
Translator translator = Util.createPackageTranslator(ChatController.class, locale);
String tableExportTitle = translator.translate("logChat.export.title");
String label = tableExportTitle + Formatter.formatDatetimeFilesystemSave(new Date(System.currentTimeMillis())) + ".xlsx";
return new OpenXMLWorkbookResource(label) {
@Override
protected void generate(OutputStream out) {
try (OpenXMLWorkbook workbook = new OpenXMLWorkbook(out, 1)) {
// headers
OpenXMLWorksheet exportSheet = workbook.nextWorksheet();
Row headerRow = exportSheet.newRow();
headerRow.addCell(0, "User", workbook.getStyles().getHeaderStyle());
headerRow.addCell(1, "Date", workbook.getStyles().getHeaderStyle());
headerRow.addCell(2, "Content", workbook.getStyles().getHeaderStyle());
// content
List<InstantMessage> messages = imDao.getMessages(ores, null, 0, -1);
for (InstantMessage message : messages) {
Row dataRow = exportSheet.newRow();
dataRow.addCell(0, message.getFromNickName(), null);
dataRow.addCell(1, message.getCreationDate(), workbook.getStyles().getDateStyle());
dataRow.addCell(2, message.getBody(), null);
}
} catch (IOException e) {
log.error("", e);
}
}
};
}
Aggregations