Browse Source

try to handle logging issue where DeferredSXSSFWorkbook close can lead to logging about close already having been called

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1894951 13f79535-47bb-0310-9956-ffa450edef68
tags/REL_5_2_0
PJ Fanning 2 years ago
parent
commit
530af684b3

+ 8
- 2
poi-ooxml/src/main/java/org/apache/poi/xssf/streaming/StreamingSheetWriter.java View File

@@ -37,6 +37,7 @@ import org.apache.poi.util.Beta;
@Beta
public class StreamingSheetWriter extends SheetDataWriter {
private static final Logger LOG = LogManager.getLogger(StreamingSheetWriter.class);
private boolean closed = false;

public StreamingSheetWriter() throws IOException {
throw new RuntimeException("StreamingSheetWriter requires OutputStream");
@@ -68,7 +69,9 @@ public class StreamingSheetWriter extends SheetDataWriter {

@Override
public void close() throws IOException {
_out.flush();
if (!closed) {
_out.flush();
}
}

@Override
@@ -78,7 +81,10 @@ public class StreamingSheetWriter extends SheetDataWriter {

@Override
boolean dispose() throws IOException {
_out.close();
if (!closed) {
_out.close();
}
closed = true;
return true;
}
}

Loading…
Cancel
Save