Apply IDE suggestions

This commit is contained in:
Dominik Stadler 2025-04-21 20:20:35 +02:00
parent f10f164c61
commit dc2cfe0bfc
2 changed files with 32 additions and 36 deletions

View File

@ -30,7 +30,7 @@ import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
/**
* An variant of SXSSFWorkbook that avoids generating a temporary file and writes data directly to
* A variant of SXSSFWorkbook that avoids generating a temporary file and writes data directly to
* the provided OutputStream.
*
* This variant is experimental and APIs may change at short notice.
@ -57,7 +57,7 @@ public class DeferredSXSSFWorkbook extends SXSSFWorkbook {
@NotImplemented
@Override
protected SheetDataWriter createSheetDataWriter() throws IOException {
protected SheetDataWriter createSheetDataWriter() {
throw new IllegalStateException("Not supported by DeferredSXSSFWorkbook");
}
@ -66,11 +66,9 @@ public class DeferredSXSSFWorkbook extends SXSSFWorkbook {
}
@Override
protected ISheetInjector createSheetInjector(SXSSFSheet sxSheet) throws IOException {
protected ISheetInjector createSheetInjector(SXSSFSheet sxSheet) {
DeferredSXSSFSheet ssxSheet = (DeferredSXSSFSheet) sxSheet;
return (output) -> {
ssxSheet.writeRows(output);
};
return ssxSheet::writeRows;
}
@Override

View File

@ -21,6 +21,7 @@ import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotEquals;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
@ -669,44 +670,41 @@ class TestEvaluationCache {
}
@Test
void testPlainValueCache() {
void testPlainValueCache() throws IOException {
try (Workbook wb = new HSSFWorkbook()) {
int numberOfSheets = 4098; // Bug 51448 reported that Evaluation Cache got messed up after 256 sheets
Workbook wb = new HSSFWorkbook();
int numberOfSheets = 4098; // Bug 51448 reported that Evaluation Cache got messed up after 256 sheets
Row row;
Cell cell;
Row row;
Cell cell;
//create summary sheet
Sheet summary = wb.createSheet("summary");
wb.setActiveSheet(wb.getSheetIndex(summary));
//create summary sheet
Sheet summary = wb.createSheet("summary");
wb.setActiveSheet(wb.getSheetIndex(summary));
//formula referring all sheets created below
row = summary.createRow(0);
Cell summaryCell = row.createCell(0);
summaryCell.setCellFormula("SUM(A2:A" + (numberOfSheets + 2) + ")");
//formula referring all sheets created below
row = summary.createRow(0);
Cell summaryCell = row.createCell(0);
summaryCell.setCellFormula("SUM(A2:A" + (numberOfSheets + 2) + ")");
//create sheets with cells having (different) numbers
// and add a row to summary
for (int i = 1; i < numberOfSheets; i++) {
Sheet sheet = wb.createSheet("new" + i);
row = sheet.createRow(0);
cell = row.createCell(0);
cell.setCellValue(i);
//create sheets with cells having (different) numbers
// and add a row to summary
for (int i = 1; i < numberOfSheets; i++) {
Sheet sheet = wb.createSheet("new" + i);
row = summary.createRow(i);
cell = row.createCell(0);
cell.setCellFormula("new" + i + "!A1");
row = sheet.createRow(0);
cell = row.createCell(0);
cell.setCellValue(i);
row = summary.createRow(i);
cell = row.createCell(0);
cell.setCellFormula("new" + i + "!A1");
}
//calculate
FormulaEvaluator evaluator = wb.getCreationHelper().createFormulaEvaluator();
evaluator.evaluateFormulaCell(summaryCell);
assertEquals(8394753.0, summaryCell.getNumericCellValue(), 0);
}
//calculate
FormulaEvaluator evaluator = wb.getCreationHelper().createFormulaEvaluator();
evaluator.evaluateFormulaCell(summaryCell);
assertEquals(8394753.0, summaryCell.getNumericCellValue(), 0);
}
}