package sagan.blog.support;
import org.asciidoctor.Asciidoctor;
import org.asciidoctor.Attributes;
import org.asciidoctor.OptionsBuilder;
import org.asciidoctor.SafeMode;
public class AsciidoctorMarkdownService implements MarkdownService {
Asciidoctor asciidoctor = Asciidoctor.Factory.create();
@Override
public String renderToHtml(String markdownSource) {
Attributes attributes = new Attributes();
attributes.setAllowUriRead(true);
attributes.setSkipFrontMatter(true);
attributes.setAttribute("source-highlighter", "prettify");
attributes.setAttribute("idprefix", "");
attributes.setAttribute("idseparator", "-");
attributes.setAnchors(true);
OptionsBuilder options = OptionsBuilder.options()
.safe(SafeMode.SAFE)
.attributes(attributes);
return asciidoctor.convert(markdownSource, options);
}
}