package nl.siegmann.epublib.bookprocessor;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.Reader;
import java.io.Writer;
import nl.siegmann.epublib.Constants;
import nl.siegmann.epublib.domain.Book;
import nl.siegmann.epublib.domain.Resource;
import nl.siegmann.epublib.epub.BookProcessor;
import org.apache.commons.io.IOUtils;
/**
* Cleans up regular html into xhtml.
* Uses HtmlCleaner to do this.
*
* @author paul
*
*/
public class TextReplaceBookProcessor extends HtmlBookProcessor implements BookProcessor {
public TextReplaceBookProcessor() {
}
public byte[] processHtml(Resource resource, Book book, String outputEncoding) throws IOException {
Reader reader = resource.getReader();
ByteArrayOutputStream out = new ByteArrayOutputStream();
Writer writer = new OutputStreamWriter(out, Constants.ENCODING);
for(String line: IOUtils.readLines(reader)) {
writer.write(processLine(line));
writer.flush();
}
return out.toByteArray();
}
private String processLine(String line) {
return line.replace("'", "'");
}
}