
it.unitn.disi.smatch.renderers.context.BaseFileContextRenderer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of s-match Show documentation
Show all versions of s-match Show documentation
A version of S-Match semantic matching framework for Open Data
The newest version!
package it.unitn.disi.smatch.renderers.context;
import it.unitn.disi.smatch.data.trees.IBaseContext;
import it.unitn.disi.smatch.loaders.ILoader;
import org.apache.log4j.Logger;
import java.io.BufferedWriter;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
/**
* Base class for file context renderers.
*
* @author Aliaksandr Autayeu
*/
public abstract class BaseFileContextRenderer extends BaseContextRenderer {
private static final Logger log = Logger.getLogger(BaseFileContextRenderer.class);
@Override
protected void process(E context, String fileName) throws ContextRendererException {
try {
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(fileName), "UTF-8"));
try {
process(context, out);
} catch (IOException e) {
final String errMessage = e.getClass().getSimpleName() + ": " + e.getMessage();
log.error(errMessage, e);
throw new ContextRendererException(errMessage, e);
} finally {
out.close();
}
} catch (IOException e) {
final String errMessage = e.getClass().getSimpleName() + ": " + e.getMessage();
log.error(errMessage, e);
throw new ContextRendererException(errMessage, e);
}
}
protected abstract void process(E context, BufferedWriter out) throws IOException, ContextRendererException;
public ILoader.LoaderType getType() {
return ILoader.LoaderType.FILE;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy