Skip to content

Commit 04525d9

Browse files
committed
Don't write footer when record is empty (#543)
1 parent edb3a8d commit 04525d9

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

metafacture-biblio/src/main/java/org/metafacture/biblio/marc21/MarcXmlEncoder.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -372,7 +372,9 @@ protected void onResetStream() {
372372

373373
@Override
374374
protected void onCloseStream() {
375-
writeFooter();
375+
if (!atStreamStart) {
376+
writeFooter();
377+
}
376378
sendAndClearData();
377379
}
378380

metafacture-biblio/src/test/java/org/metafacture/biblio/marc21/MarcXmlEncoderTest.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -389,4 +389,11 @@ public void shouldNotEncodeNestedTypeLiteralAsAttribute() {
389389
assertEquals(expected, actual);
390390
}
391391

392+
@Test
393+
public void issue543_shouldNotWriteFooterWhenRecordIsEmpty() {
394+
encoder.closeStream();
395+
String actual = resultCollector.toString();
396+
assertTrue(actual.isEmpty());
397+
}
398+
392399
}

0 commit comments

Comments
 (0)