package net.java.textilej.parser.tag.confluence;
import net.java.textilej.parser.Attributes;
import net.java.textilej.parser.DocumentBuilder.SpanType;
import net.java.textilej.parser.tag.PhraseModifier;
import net.java.textilej.parser.tag.PhraseModifierProcessor;
public class MonospacePhraseModifier extends PhraseModifier {
@Override
protected String getPattern() {
return "\\{\\{([^\\}]+)\\}\\}";
}
@Override
protected int getPatternGroupCount() {
return 1;
}
@Override
protected PhraseModifierProcessor newProcessor() {
return new MonospacePhraseProcessor();
}
private static class MonospacePhraseProcessor extends PhraseModifierProcessor {
@Override
public void emitPhrase() {
String text = group(1);
if (text != null && text.length() > 0) {
builder.beginSpan(SpanType.MONOSPACE, new Attributes(null,"monospaced",null,null));
parserServices.emitText(text);
builder.endSpan();
}
}
}
}