From 358f39aec6d4aae6723b5bad9f66602d86c9a8c2 Mon Sep 17 00:00:00 2001
From: Thorsten Vitt <thorsten.vitt@uni-wuerzburg.de>
Date: Sun, 19 Jan 2014 10:30:59 +0100
Subject: [PATCH] Flat corpus support (currently req'd for EPUB)

---
 .../services/aggregator/CorpusBasedExporter.java      | 11 ++++++++++-
 .../services/aggregator/epub/EPUBSerializer.java      |  1 +
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/main/java/info/textgrid/services/aggregator/CorpusBasedExporter.java b/src/main/java/info/textgrid/services/aggregator/CorpusBasedExporter.java
index 8c7b062..1dc036c 100644
--- a/src/main/java/info/textgrid/services/aggregator/CorpusBasedExporter.java
+++ b/src/main/java/info/textgrid/services/aggregator/CorpusBasedExporter.java
@@ -35,6 +35,7 @@ public abstract class CorpusBasedExporter extends AbstractExporter {
 	protected boolean readStylesheetPI = false;
 	private InputSupplier<? extends InputStream> sourceBuffer = null;
 	private IBufferFactory bufferFactory = new FBBAOSBufferFactory();
+	private boolean flatCorpus = false;
 
 	public CorpusBasedExporter(final ITextGridRep repository,
 			final Request request, final String uriList) {
@@ -128,7 +129,7 @@ protected Source loadSource(final boolean bufferRequired)
 		if (sourceType == SourceType.AGGREGATION
 				|| sourceType == SourceType.BASKET) {
 			final TEICorpusSerializer corpusSerializer =
-					new TEICorpusSerializer(getRootObjects(), false, getSid().orNull());
+					new TEICorpusSerializer(getRootObjects(), isFlatCorpus(), getSid().orNull());
 			final OutputStream corpusBuffer = getBufferFactory().getBufferSink();
 			corpusSerializer.write(corpusBuffer);
 			corpusBuffer.close();
@@ -158,4 +159,12 @@ protected void setBufferFactory(final IBufferFactory bufferFactory) {
 		this.bufferFactory = bufferFactory;
 	}
 
+	public boolean isFlatCorpus() {
+		return flatCorpus;
+	}
+
+	public void setFlatCorpus(final boolean flatCorpus) {
+		this.flatCorpus = flatCorpus;
+	}
+
 }
\ No newline at end of file
diff --git a/src/main/java/info/textgrid/services/aggregator/epub/EPUBSerializer.java b/src/main/java/info/textgrid/services/aggregator/epub/EPUBSerializer.java
index ff8fac0..98eaa09 100644
--- a/src/main/java/info/textgrid/services/aggregator/epub/EPUBSerializer.java
+++ b/src/main/java/info/textgrid/services/aggregator/epub/EPUBSerializer.java
@@ -62,6 +62,7 @@ public EPUBSerializer(final ITextGridRep repository,
 		this.sid = sid;
 		setMediaType("application/epub+zip");
 		setFileExtension("epub");
+		setFlatCorpus(true);
 	}
 
 	public void setStylesheet(final URI stylesheet) {
-- 
GitLab