
com.github.nicosensei.textbatch.job.ResultFileJob Maven / Gradle / Ivy
/**
*
*/
package com.github.nicosensei.textbatch.job;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.util.LinkedList;
import java.util.List;
import com.github.nicosensei.textbatch.ToolException;
/**
* @author ngiraud
*
*/
public abstract class ResultFileJob extends Job {
private List outputBuffer = new LinkedList();
/**
* @param input
* @param progress
*/
protected ResultFileJob(
AbstractInputFileReader input, JobProgress progress) {
super(input, progress);
}
@Override
protected void sectionComplete() throws ToolException {
if (outputBuffer.isEmpty()) {
return;
}
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
for (String line : outputBuffer) {
pw.println(line);
}
((ResultFileJobProgress) getProgress()).logResult(sw.toString());
pw.close();
outputBuffer.clear();
}
protected void addResult(String res) {
outputBuffer.add(res);
}
@Override
protected abstract void processLine(L line) throws ToolException;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy