package eu.lod2.rsine.dissemination.messageformatting;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.openrdf.query.BindingSet;
import java.io.StringWriter;
public class VelocityBindingSetFormatter implements BindingSetFormatter {
private String velocityTemplate;
public VelocityBindingSetFormatter(String velocityTemplate) {
this.velocityTemplate = velocityTemplate;
}
@Override
public String toMessage(BindingSet bindingSet) {
StringWriter stringWriter = new StringWriter();
Velocity.init();
VelocityContext context = new VelocityContext();
context.put("bindingSet", bindingSet);
context.put("msgid", System.currentTimeMillis());
Velocity.evaluate(context, stringWriter, "xxx", velocityTemplate);
return stringWriter.toString();
}
}