public class MarkdownSink extends AbstractTextSink implements MarkdownMarkup
Modifier and Type | Field and Description |
---|---|
protected Queue<org.apache.maven.doxia.module.markdown.MarkdownSink.ElementContext> |
elementContextStack
The context of the surrounding elements as stack (LIFO)
|
protected Queue<Queue<String>> |
inlineStack
Keep track of end markup for inline events.
|
ANCHOR_END_MARKUP, ANCHOR_START_MARKUP, BACKSLASH, BLANK_LINE, BLOCKQUOTE_START_MARKUP, BOLD_END_MARKUP, BOLD_START_MARKUP, COMMENT_END, COMMENT_START, HORIZONTAL_RULE_MARKUP, INDENT, ITALIC_END_MARKUP, ITALIC_START_MARKUP, LINK_END_MARKUP, LINK_START_1_MARKUP, LINK_START_2_MARKUP, LIST_ORDERED_ITEM_START_MARKUP, LIST_UNORDERED_ITEM_START_MARKUP, METADATA_MARKUP, MONOSPACED_END_MARKUP, MONOSPACED_START_MARKUP, NON_BREAKING_SPACE_MARKUP, SECTION_TITLE_START_MARKUP, TABLE_CELL_SEPARATOR_MARKUP, TABLE_COL_CENTER_ALIGNED_MARKUP, TABLE_COL_LEFT_ALIGNED_MARKUP, TABLE_COL_RIGHT_ALIGNED_MARKUP, TABLE_ROW_PREFIX, VERBATIM_END_MARKUP, VERBATIM_START_MARKUP
PIPE
COLON, EOL, EQUAL, GREATER_THAN, LEFT_CURLY_BRACKET, LEFT_SQUARE_BRACKET, LESS_THAN, MINUS, PLUS, QUOTE, RIGHT_CURLY_BRACKET, RIGHT_SQUARE_BRACKET, SEMICOLON, SLASH, SPACE, STAR
JUSTIFY_CENTER, JUSTIFY_LEFT, JUSTIFY_RIGHT, NUMBERING_DECIMAL, NUMBERING_LOWER_ALPHA, NUMBERING_LOWER_ROMAN, NUMBERING_UPPER_ALPHA, NUMBERING_UPPER_ROMAN, SECTION_LEVEL_1, SECTION_LEVEL_2, SECTION_LEVEL_3, SECTION_LEVEL_4, SECTION_LEVEL_5, SECTION_LEVEL_6
Modifier | Constructor and Description |
---|---|
protected |
MarkdownSink(Writer writer)
Constructor, initialize the Writer and the variables.
|
Modifier and Type | Method and Description |
---|---|
void |
anchor_()
Ends an anchor element.
|
void |
anchor(String name,
SinkEventAttributes attributes)
Starts an element which defines an anchor.
|
void |
author_()
Ends an author element.
|
void |
blockquote_()
Ends an blockquote element.
|
void |
blockquote(SinkEventAttributes attributes)
Starts a blockquote element.
|
void |
body_()
Ends the body element.
|
void |
body(SinkEventAttributes attributes)
Starts the body of a document.
|
void |
bold_()
Ends a bold element.
|
void |
bold()
Starts a bold element.
|
void |
close()
Close the writer or the stream, if needed.
|
void |
comment(String comment)
Add a comment.
|
void |
date_()
Ends the date element.
|
void |
definedTerm_()
Ends a definition term element within a definition list.
|
void |
definedTerm(SinkEventAttributes attributes)
Starts a definition term element within a definition list.
|
void |
definition_()
Ends a definition element within a definition list.
|
void |
definition(SinkEventAttributes attributes)
Starts a definition element within a definition list.
|
void |
definitionList_()
Ends a definition list element.
|
void |
definitionList(SinkEventAttributes attributes)
Starts a definition list.
|
void |
figure_()
Ends a basic image embedding element.
|
void |
figure(SinkEventAttributes attributes)
Starts a basic image embedding element.
|
void |
figureGraphics(String name,
SinkEventAttributes attributes)
Adds a graphic element.
|
void |
flush()
Flush the writer or the stream, if needed.
|
protected StringBuilder |
getBuffer()
Returns the buffer that holds the current text.
|
void |
head_()
Ends the head element.
|
void |
head(SinkEventAttributes attributes)
Starts the head element.
|
void |
horizontalRule(SinkEventAttributes attributes)
Adds a horizontal separator rule.
|
protected void |
init()
This is called in
AbstractSink.head() or in Sink.close() , and can be used
to set the sink into a clear state so it can be re-used. |
void |
inline_()
Ends an inline element.
|
void |
inline(SinkEventAttributes attributes)
Starts an inline element.
|
void |
italic_()
Ends an italic element.
|
void |
italic()
Starts an italic element.
|
void |
lineBreak(SinkEventAttributes attributes)
Adds a line break.
|
void |
link_()
Ends a link element.
|
void |
link(String name,
SinkEventAttributes attributes)
Starts a link.
|
void |
list_()
Ends an unordered list element.
|
void |
listItem_()
Ends a list item element within an unordered list.
|
void |
listItem(SinkEventAttributes attributes)
Starts a list item element within an unordered list.
|
void |
monospaced_()
Ends a monospaced element.
|
void |
monospaced()
Starts a monospaced element.
|
void |
nonBreakingSpace()
Adding a non breaking space, ie a space without any special formatting operations.
|
void |
numberedList_()
Ends an ordered list element.
|
void |
numberedList(int numbering,
SinkEventAttributes attributes)
Starts an ordered list element.
|
void |
numberedListItem_()
Ends a list item element within an ordered list.
|
void |
numberedListItem(SinkEventAttributes attributes)
Starts a list item element within an ordered list.
|
void |
pageBreak()
Adding a new page separator.
|
void |
paragraph_()
Ends a paragraph element.
|
void |
paragraph(SinkEventAttributes attributes)
Starts a paragraph.
|
void |
rawText(String text)
Adding a raw text, ie a text without any special formatting operations.
|
protected void |
resetBuffer()
Reset the StringBuilder.
|
void |
sectionTitle_(int level)
Ends a section title at the given level.
|
void |
sectionTitle(int level,
SinkEventAttributes attributes)
Start a new section title at the given level.
|
void |
table(SinkEventAttributes attributes)
Starts a table.
|
void |
tableCaption_()
Ends a caption element of a table.
|
void |
tableCaption(SinkEventAttributes attributes)
Starts a table caption.
|
void |
tableCell_()
Ends a cell element.
|
void |
tableCell(SinkEventAttributes attributes)
Starts a table cell.
|
void |
tableHeaderCell_()
Ends a cell header element.
|
void |
tableHeaderCell(SinkEventAttributes attributes)
Starts a table header cell.
|
void |
tableRow_()
Ends a row element.
|
void |
tableRow(SinkEventAttributes attributes)
Starts a table row.
|
void |
tableRows_()
Ends an element that contains rows of table data.
|
void |
tableRows(int[] justification,
boolean grid)
Starts an element that contains rows of table data.
|
void |
text(String text,
SinkEventAttributes attributes)
Adds a text.
|
void |
title_()
Ends the title element.
|
void |
unknown(String name,
Object[] requiredParams,
SinkEventAttributes attributes)
Add an unknown event.
|
void |
verbatim_()
Ends a verbatim element.
|
void |
verbatim(SinkEventAttributes attributes)
Starts a verbatim block, ie a block where whitespace has semantic relevance.
|
protected void |
writeUnescaped(String text) |
address_, address, article_, article, author, content_, content, data_, data, date, definitionListItem_, definitionListItem, division_, division, figureCaption_, figureCaption, footer_, footer, header_, header, lineBreakOpportunity, list, navigation_, navigation, section_, section, sidebar_, sidebar, table_, time_, time, title
address, anchor, article, author, blockquote, body, content, data, date, definedTerm, definition, definitionList, definitionListItem, division, figure, figureCaption, figureGraphics, footer, formatLocation, getDocumentLocator, getLocationLogPrefix, head, header, horizontalRule, inline, lineBreak, lineBreakOpportunity, link, list, listItem, navigation, numberedList, numberedListItem, paragraph, section1_, section1, section2_, section2, section3_, section3, section4_, section4, section5_, section5, section6_, section6, sectionTitle_, sectionTitle, sectionTitle1_, sectionTitle1, sectionTitle2_, sectionTitle2, sectionTitle3_, sectionTitle3, sectionTitle4_, sectionTitle4, sectionTitle5_, sectionTitle5, sectionTitle6_, sectionTitle6, setDocumentLocator, sidebar, table, tableCaption, tableCell, tableHeaderCell, tableRow, tableRows, text, time, title, unifyEOLs, verbatim
protected Queue<Queue<String>> inlineStack
protected Queue<org.apache.maven.doxia.module.markdown.MarkdownSink.ElementContext> elementContextStack
protected MarkdownSink(Writer writer)
writer
- not null writer to write the result. Should be an UTF-8 Writer.protected StringBuilder getBuffer()
protected void init()
AbstractSink
AbstractSink.head()
or in Sink.close()
, and can be used
to set the sink into a clear state so it can be re-used.init
in class AbstractSink
protected void resetBuffer()
public void head(SinkEventAttributes attributes)
SinkAdapter
This contains information about the current document, (eg its title) that is not
considered document content. The head element is optional but if it exists, it has to be
unique within a sequence of Sink events that produces one output document, and it has
to come before the Sink.body(SinkEventAttributes)
element.
The canonical sequence of events for the head element is:
sink.head(); sink.title(); sink.text("Title"); sink.title_(); sink.author(); sink.text("Author"); sink.author_(); sink.date(); sink.text("Date"); sink.date_(); sink.head_();
but none of the enclosed events is required. However, if they exist they have to occur in the order shown, and the title() and date() events have to be unique (author() events may occur any number of times).
Supported attributes are:
PROFILE
,LANG
.
head
in interface Sink
head
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void head_()
SinkAdapter
head_
in interface Sink
head_
in class SinkAdapter
public void body(SinkEventAttributes attributes)
SinkAdapter
Supported attributes are the base attributes
.
body
in interface Sink
body
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.Sink.head(SinkEventAttributes)
public void body_()
SinkAdapter
body_
in interface Sink
body_
in class SinkAdapter
public void title_()
SinkAdapter
title_
in interface Sink
title_
in class SinkAdapter
public void author_()
SinkAdapter
author_
in interface Sink
author_
in class SinkAdapter
public void date_()
SinkAdapter
date_
in interface Sink
date_
in class SinkAdapter
public void sectionTitle(int level, SinkEventAttributes attributes)
SinkAdapter
This element is optional, but if it exists, it has to be contained, and be the first
element, within a corresponding section
element of the same level.
NOTE: It is strongly recommended not to make section titles implicit anchors. Neither Parsers nor Sinks should insert any content that is not explicitly present in the original source document, as this would lead to undefined behaviour for multi-format processing chains. However, while Parsers must never emit anchors for section titles, some specialized Sinks may implement such a feature if the resulting output documents are not going to be further processed (and this is properly documented).
Supported attributes are the base attributes
plus
ALIGN
.
sectionTitle
in interface Sink
sectionTitle
in class SinkAdapter
level
- the section title level (must be a value between 1 and 6).attributes
- A set of SinkEventAttributes
, may be null
.public void sectionTitle_(int level)
SinkAdapter
sectionTitle_
in interface Sink
sectionTitle_
in class SinkAdapter
level
- the section title level (must be a value between 1 and 6).public void list_()
SinkAdapter
list_
in interface Sink
list_
in class SinkAdapter
public void listItem(SinkEventAttributes attributes)
SinkAdapter
Supported attributes are the base attributes
.
listItem
in interface Sink
listItem
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void listItem_()
SinkAdapter
listItem_
in interface Sink
listItem_
in class SinkAdapter
public void numberedList(int numbering, SinkEventAttributes attributes)
SinkAdapter
Supported attributes are the base attributes
.
numberedList
in interface Sink
numberedList
in class SinkAdapter
numbering
- the numbering style.attributes
- A set of SinkEventAttributes
, may be null
.Sink.NUMBERING_DECIMAL
,
Sink.NUMBERING_LOWER_ALPHA
,
Sink.NUMBERING_LOWER_ROMAN
,
Sink.NUMBERING_UPPER_ALPHA
,
Sink.NUMBERING_UPPER_ROMAN
public void numberedList_()
SinkAdapter
numberedList_
in interface Sink
numberedList_
in class SinkAdapter
public void numberedListItem(SinkEventAttributes attributes)
SinkAdapter
Supported attributes are the base attributes
.
numberedListItem
in interface Sink
numberedListItem
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void numberedListItem_()
SinkAdapter
numberedListItem_
in interface Sink
numberedListItem_
in class SinkAdapter
public void definitionList(SinkEventAttributes attributes)
SinkAdapter
Supported attributes are the base attributes
.
definitionList
in interface Sink
definitionList
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void definitionList_()
SinkAdapter
definitionList_
in interface Sink
definitionList_
in class SinkAdapter
public void definedTerm(SinkEventAttributes attributes)
SinkAdapter
Supported attributes are the base attributes
.
definedTerm
in interface Sink
definedTerm
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void definedTerm_()
SinkAdapter
definedTerm_
in interface Sink
definedTerm_
in class SinkAdapter
public void definition(SinkEventAttributes attributes)
SinkAdapter
Supported attributes are the base attributes
.
definition
in interface Sink
definition
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void definition_()
SinkAdapter
definition_
in interface Sink
definition_
in class SinkAdapter
public void pageBreak()
SinkAdapter
pageBreak
in interface Sink
pageBreak
in class SinkAdapter
public void paragraph(SinkEventAttributes attributes)
SinkAdapter
Supported attributes are the base attributes
plus ALIGN
.
paragraph
in interface Sink
paragraph
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void paragraph_()
SinkAdapter
paragraph_
in interface Sink
paragraph_
in class SinkAdapter
public void verbatim(SinkEventAttributes attributes)
SinkAdapter
Text in a verbatim block must only be wrapped at the linebreaks in the source, and spaces should not be collapsed. It should be displayed in a fixed-width font to retain the formatting but the overall size may be chosen by the implementation.
Most Sink events may be emitted within a verbatim block, the only elements explicitly forbidden are font-changing events and figures. Also, verbatim blocks may not be nested.
Supported attributes are the base attributes
plus:
DECORATION
(values: "source"),ALIGN
,WIDTH
.
verbatim
in interface Sink
verbatim
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void verbatim_()
SinkAdapter
verbatim_
in interface Sink
verbatim_
in class SinkAdapter
public void blockquote(SinkEventAttributes attributes)
SinkAdapter
Supported attributes are the base attributes
.
blockquote
in interface Sink
blockquote
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void blockquote_()
SinkAdapter
blockquote_
in interface Sink
blockquote_
in class SinkAdapter
public void horizontalRule(SinkEventAttributes attributes)
SinkAdapter
Supported attributes are the base attributes
plus:
ALIGN
,NOSHADE
,SIZE
,WIDTH
.
horizontalRule
in interface Sink
horizontalRule
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void table(SinkEventAttributes attributes)
SinkAdapter
The canonical sequence of events for the table element is:
sink.table(); sink.tableRows(justify, true); sink.tableRow(); sink.tableCell(); sink.text("cell 1,1"); sink.tableCell_(); sink.tableCell(); sink.text("cell 1,2"); sink.tableCell_(); sink.tableRow_(); sink.tableRows_(); sink.tableCaption(); sink.text("Table caption"); sink.tableCaption_(); sink.table_();
where the tableCaption element is optional.
However, NOTE that the order of tableCaption and
Sink.tableRows(int[],boolean)
events is arbitrary,
ie a parser may emit the tableCaption before or after the tableRows.
Implementing sinks should be prepared to handle both possibilities.
Supported attributes are the base attributes
plus:
ALIGN
,BGCOLOR
,BORDER
,CELLPADDING
,CELLSPACING
,FRAME
,RULES
,SUMMARY
,WIDTH
.
table
in interface Sink
table
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void tableRows(int[] justification, boolean grid)
SinkAdapter
tableRows
in interface Sink
tableRows
in class SinkAdapter
justification
- the default justification of columns.
This can be overridden by individual table rows or table cells.
If null a left alignment is assumed by default. If this array
has less elements than there are columns in the table then the value of
the last array element will be taken as default for the remaining table cells.grid
- true to provide a grid, false otherwise.Sink.table(SinkEventAttributes)
,
Sink.JUSTIFY_CENTER
,
Sink.JUSTIFY_LEFT
,
Sink.JUSTIFY_RIGHT
public void tableRows_()
SinkAdapter
tableRows_
in interface Sink
tableRows_
in class SinkAdapter
public void tableRow(SinkEventAttributes attributes)
SinkAdapter
Supported attributes are the base attributes
plus:
ALIGN
,BGCOLOR
,VALIGN
.
tableRow
in interface Sink
tableRow
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void tableRow_()
SinkAdapter
tableRow_
in interface Sink
tableRow_
in class SinkAdapter
public void tableCell(SinkEventAttributes attributes)
SinkAdapter
Supported attributes are the base attributes
plus:
ABBRV
,ALIGN
,AXIS
,BGCOLOR
,COLSPAN
,HEADERS
,HEIGHT
,NOWRAP
,ROWSPAN
,SCOPE
,VALIGN
,WIDTH
.
tableCell
in interface Sink
tableCell
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void tableHeaderCell(SinkEventAttributes attributes)
SinkAdapter
Supported attributes are the same as for tableCell
.
tableHeaderCell
in interface Sink
tableHeaderCell
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void tableCell_()
SinkAdapter
tableCell_
in interface Sink
tableCell_
in class SinkAdapter
public void tableHeaderCell_()
SinkAdapter
tableHeaderCell_
in interface Sink
tableHeaderCell_
in class SinkAdapter
public void tableCaption(SinkEventAttributes attributes)
SinkAdapter
Note that the order of tableCaption and
Sink.tableRows(int[],boolean)
events is arbitrary,
ie a parser may emit the tableCaption before or after the tableRows.
Implementing sinks should be prepared to handle both possibilities.
Supported attributes are the base attributes
plus ALIGN
.
tableCaption
in interface Sink
tableCaption
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.Sink.table(SinkEventAttributes)
public void tableCaption_()
SinkAdapter
tableCaption_
in interface Sink
tableCaption_
in class SinkAdapter
public void figure(SinkEventAttributes attributes)
SinkAdapter
The canonical sequence of events for the figure element is:
sink.figure(); sink.figureGraphics("figure.png"); sink.figureCaption(); sink.text("Figure caption",); sink.figureCaption_(); sink.figure_();
where the figureCaption element is optional.
However, NOTE that the order of figureCaption and figureGraphics events is arbitrary, ie a parser may emit the figureCaption before or after the figureGraphics. Implementing sinks should be prepared to handle both possibilities.
NOTE also that the figureGraphics() event does not have to be embedded
inside figure(), in particular for in-line images the figureGraphics() should be used
stand-alone (in HTML language, figureGraphics() produces a <img>
tag, while figure() opens a paragraph- or <div>
- like environment).
Supported attributes are the base attributes
.
figure
in interface Sink
figure
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void figureGraphics(String name, SinkEventAttributes attributes)
SinkAdapter
The src
parameter should be a valid link, ie it can be an absolute
URL or a link relative to the current source document.
Supported attributes are the base attributes
plus:
SRC
,ALT
,WIDTH
,HEIGHT
,ALIGN
,BORDER
,HSPACE
,VSPACE
,ISMAP
,USEMAP
.
If the SRC
attribute is specified in SinkEventAttributes,
it will be overridden by the src
parameter.
figureGraphics
in interface Sink
figureGraphics
in class SinkAdapter
name
- the image source, a valid URL.attributes
- A set of SinkEventAttributes
, may be null
.Sink.figure(SinkEventAttributes)
public void figure_()
SinkAdapter
figure_
in interface Sink
figure_
in class SinkAdapter
public void anchor(String name, SinkEventAttributes attributes)
The name
parameter has to be a valid SGML NAME token.
According to the
HTML 4.01 specification section 6.2 SGML basic types:
ID and NAME tokens must begin with a letter ([A-Za-z]) and may be followed by any number of letters, digits ([0-9]), hyphens ("-"), underscores ("_"), colons (":"), and periods (".").
Supported attributes are the base attributes
.
If NAME
is specified in the SinkEventAttributes,
it will be overwritten by the name
parameter.
anchor
in interface Sink
anchor
in class SinkAdapter
name
- the name of the anchor. This has to be a valid SGML NAME token.attributes
- A set of SinkEventAttributes
, may be null
.public void anchor_()
SinkAdapter
anchor_
in interface Sink
anchor_
in class SinkAdapter
public void link(String name, SinkEventAttributes attributes)
The name
parameter has to be a valid URI according to
RFC 3986,
i.e. for internal links (links to an anchor within the same source
document), name
should start with the character "#".
This also implies that all unsafe characters are already encoded.
Supported attributes are the base attributes
plus:
CHARSET
,COORDS
,HREF
,HREFLANG
,REL
,REV
,SHAPE
,TARGET
,TYPE
.
If HREF
is specified in the
SinkEventAttributes, it will be overwritten by the name
parameter.
link
in interface Sink
link
in class SinkAdapter
name
- the name of the link.attributes
- A set of SinkEventAttributes
, may be null
.URI.toASCIIString()
public void link_()
SinkAdapter
link_
in interface Sink
link_
in class SinkAdapter
public void inline(SinkEventAttributes attributes)
SinkAdapter
The inline method is similar to Sink.text(String,SinkEventAttributes)
, but
allows you to wrap arbitrary elements in addition to text.
Supported attributes are the base attributes
plus
SEMANTICS
(values "emphasis", "strong",
"small", "line-through", "citation", "quote", "definition", "abbreviation",
"italic", "bold", "monospaced", "variable", "sample", "keyboard", "superscript",
"subscript", "annotation", "highlight", "ruby", "rubyBase", "rubyText",
"rubyTextContainer", "rubyParentheses", "bidirectionalIsolation",
"bidirectionalOverride", "phrase", "insert", "delete").
inline
in interface Sink
inline
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void inline_()
SinkAdapter
inline_
in interface Sink
inline_
in class SinkAdapter
public void italic()
SinkAdapter
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.italic
in interface Sink
italic
in class SinkAdapter
public void italic_()
SinkAdapter
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.italic_
in interface Sink
italic_
in class SinkAdapter
public void bold()
SinkAdapter
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.bold
in interface Sink
bold
in class SinkAdapter
public void bold_()
SinkAdapter
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.bold_
in interface Sink
bold_
in class SinkAdapter
public void monospaced()
SinkAdapter
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.monospaced
in interface Sink
monospaced
in class SinkAdapter
public void monospaced_()
SinkAdapter
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.monospaced_
in interface Sink
monospaced_
in class SinkAdapter
public void lineBreak(SinkEventAttributes attributes)
SinkAdapter
lineBreak
in interface Sink
lineBreak
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void nonBreakingSpace()
SinkAdapter
nonBreakingSpace
in interface Sink
nonBreakingSpace
in class SinkAdapter
public void text(String text, SinkEventAttributes attributes)
SinkAdapter
The text
parameter should contain only real content, ie any
ignorable/collapsable whitespace/EOLs or other pretty-printing should
be removed/normalized by a parser.
If text
contains any variants of line terminators, they should
be normalized to the System EOL by an implementing Sink.
Supported attributes are the base attributes
plus
SEMANTICS
(values "emphasis", "strong",
"small", "line-through", "citation", "quote", "definition", "abbreviation",
"italic", "bold", "monospaced", "variable", "sample", "keyboard", "superscript",
"subscript", "annotation", "highlight", "ruby", "rubyBase", "rubyText",
"rubyTextContainer", "rubyParentheses", "bidirectionalIsolation",
"bidirectionalOverride", "phrase", "insert", "delete").
The following attributes are deprecated:
VALIGN
(values "sub", "sup"),DECORATION
(values "underline", "overline", "line-through"),STYLE
(values "italic", "bold", "monospaced").
text
in interface Sink
text
in class SinkAdapter
text
- The text to write.attributes
- A set of SinkEventAttributes
, may be null
.public void rawText(String text)
SinkAdapter
rawText
in interface Sink
rawText
in class SinkAdapter
text
- The text to write.public void comment(String comment)
SinkAdapter
comment
in interface Sink
comment
in class SinkAdapter
comment
- The comment to write.public void unknown(String name, Object[] requiredParams, SinkEventAttributes attributes)
unknown
in interface Sink
unknown
in class SinkAdapter
name
- The name of the event.requiredParams
- An optional array of required parameters to the event.
May be null
.attributes
- A set of SinkEventAttributes
, may be null
.Sink.unknown(String,Object[],SinkEventAttributes)
protected void writeUnescaped(String text)
public void flush()
SinkAdapter
flush
in interface Sink
flush
in class SinkAdapter
public void close()
SinkAdapter
close
in interface AutoCloseable
close
in interface Sink
close
in class SinkAdapter
Copyright © 2005–2024 The Apache Software Foundation. All rights reserved.