@Documented
@Retention(value=RUNTIME)
@Target(value=TYPE)
public @interface Contexts
BlockProcessor
processes.
Example for a BlockProcessor that transforms all open blocks with the name yell
to upper case:
@Name("yell")
@Contexts(Contexts.OPEN)
@ContentModel(ContentModel.SIMPLE)
class YellBlockProcessor extends BlockProcessor {
public YellBlockProcessor(String blockName) {
super(blockName);
}
public Object process(StructuralNode parent, Reader reader, Map attributes) {
List lines = reader.readLines();
List newLines = new ArrayList<>();
for (String line: lines) {
newLines.add(line.toUpperCase());
}
return createBlock(parent, 'paragraph', newLines)
}
}
Applicable for:
BlockMacroProcessor | |
BlockProcessor | ✓ |
BlockProcessor | |
DocInfoProcessor | |
IncludeProcessor | |
InlineMacroProcessor | |
Postprocessor | |
Preprocessor | |
Treeprocessor |
Modifier and Type | Fields and Description |
---|---|
static java.lang.String |
EXAMPLE
Predefined constant for making a Processor work on example blocks.
|
static java.lang.String |
LISTING
Predefined constant for making a Processor work on source blocks.
|
static java.lang.String |
LITERAL
Predefined constant for making a Processor work on literal blocks.
|
static java.lang.String |
OPEN
Predefined constant for making a Processor work on open blocks.
|
static java.lang.String |
PARAGRAPH
Predefined constant for making a Processor work on paragraph blocks.
|
static java.lang.String |
PASS
Predefined constant for making a Processor work on passthrough blocks.
|
static java.lang.String |
QUOTE
Predefined constant for making a Processor work on quote blocks.
|
static java.lang.String |
SIDEBAR
Predefined constant for making a Processor work on sidebar blocks.
|
Modifier and Type | Required Element and Description |
---|---|
java.lang.String[] |
value |
public static final java.lang.String OPEN
[foo] -- An open block can be an anonymous container, or it can masquerade as any other block. --
public static final java.lang.String EXAMPLE
[foo] ==== This is just a neat example. ====
public static final java.lang.String SIDEBAR
[foo] **** This is just a sidebar. ****
public static final java.lang.String LITERAL
[foo] .... This is just a literal block. ....
public static final java.lang.String LISTING
[foo] .... This is just a literal block. ....
public static final java.lang.String QUOTE
[foo] ____ To be or not to be... ____
public static final java.lang.String PASS
[foo] ++++ <h1>Big text</h1> ++++