public class Xhtml5BaseSink extends AbstractXmlSink implements HtmlMarkup
Modifier and Type | Field and Description |
---|---|
protected Stack<HTML.Tag> |
contentStack
Keep track of the main and div tags for content events.
|
protected Stack<List<HTML.Tag>> |
inlineStack
Keep track of the closing tags for inline events.
|
protected MutableAttributeSet |
tableAttributes
used to store attributes passed to table().
|
protected boolean |
tableRows
Flag to know if
tableRows(int[], boolean) is called or not. |
A, ABBR, ACRONYM, ADDRESS, APPLET, AREA, ARTICLE, ASIDE, AUDIO, B, BASE, BASEFONT, BDI, BDO, BIG, BLOCKQUOTE, BODY, BR, BUTTON, CANVAS, CAPTION, CDATA_TYPE, CENTER, CITE, CODE, COL, COLGROUP, COMMAND, DATA, DATALIST, DD, DEL, DETAILS, DFN, DIALOG, DIR, DIV, DL, DT, EM, EMBED, ENTITY_TYPE, FIELDSET, FIGCAPTION, FIGURE, FONT, FOOTER, FORM, FRAME, FRAMESET, H1, H2, H3, H4, H5, H6, HEAD, HEADER, HGROUP, HR, HTML, I, IFRAME, IMG, INPUT, INS, ISINDEX, KBD, KEYGEN, LABEL, LEGEND, LI, LINK, MAIN, MAP, MARK, MENU, META, METER, NAV, NOFRAMES, NOSCRIPT, OBJECT, OL, OPTGROUP, OPTION, OUTPUT, P, PARAM, PICTURE, PRE, PROGRESS, Q, RB, RP, RT, RTC, RUBY, S, SAMP, SCRIPT, SECTION, SELECT, SMALL, SOURCE, SPAN, STRIKE, STRONG, STYLE, SUB, SUMMARY, SUP, TABLE, TAG_TYPE_END, TAG_TYPE_SIMPLE, TAG_TYPE_START, TBODY, TD, TEMPLATE, TEXTAREA, TFOOT, TH, THEAD, TIME, TITLE, TR, TRACK, TT, U, UL, VAR, VIDEO, WBR
BANG, CDATA, DOCTYPE_START, ENTITY_START, XML_NAMESPACE
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, ROLE, SECTION_LEVEL_1, SECTION_LEVEL_2, SECTION_LEVEL_3, SECTION_LEVEL_4, SECTION_LEVEL_5, SECTION_LEVEL_6
Constructor and Description |
---|
Xhtml5BaseSink(Writer out)
Constructor, initialize the PrintWriter.
|
Modifier and Type | Method and Description |
---|---|
void |
address_()
Ends an address element.
|
void |
address()
Starts an address element.
|
void |
address(SinkEventAttributes attributes)
Starts an address element.
|
void |
anchor_()
Ends an anchor element.
|
void |
anchor(String name)
Starts an element which defines an anchor.
|
void |
anchor(String name,
SinkEventAttributes attributes)
Starts an element which defines an anchor.
|
void |
article_()
Ends the article element.
|
void |
article()
Starts an article within a document.
|
void |
article(SinkEventAttributes attributes)
Starts an article within a document.
|
void |
blockquote_()
Ends an blockquote element.
|
void |
blockquote()
Starts a blockquote element.
|
void |
blockquote(SinkEventAttributes attributes)
Starts a blockquote element.
|
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 |
content_()
Ends a main content section.
|
void |
content()
Start the main content section between the header and the
footer within the sections and/or body.
|
void |
content(SinkEventAttributes attributes)
Start the main content section between the header and the
footer within the sections and/or body.
|
protected void |
content(String text)
Write HTML escaped text to output.
|
void |
data_()
Ends an data element.
|
void |
data(String value)
Starts a data element which groups together other elements representing microformats.
|
void |
data(String value,
SinkEventAttributes attributes)
Starts a data element which groups together other elements representing microformats.
|
void |
definedTerm_()
Ends a definition term element within a definition list.
|
void |
definedTerm()
Starts 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()
Starts 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()
Starts a definition list element.
|
void |
definitionList(SinkEventAttributes attributes)
Starts a definition list.
|
void |
division_()
Ends a division element.
|
void |
division()
Starts a division element grouping together other elements.
|
void |
division(SinkEventAttributes attributes)
Starts a division element grouping together other elements.
|
protected static String |
encodeURL(String text)
Forward to HtmlTools.encodeURL( text ).
|
protected static String |
escapeHTML(String text)
Forward to HtmlTools.escapeHTML( text ).
|
void |
figure_()
Ends a basic image embedding element.
|
void |
figure()
Starts a basic image embedding element.
|
void |
figure(SinkEventAttributes attributes)
Starts a basic image embedding element.
|
void |
figureCaption_()
Ends a caption of an image.
|
void |
figureCaption()
Starts a caption of an image element.
|
void |
figureCaption(SinkEventAttributes attributes)
Starts a figure caption.
|
void |
figureGraphics(String name)
Adding a source of a graphic.
|
void |
figureGraphics(String src,
SinkEventAttributes attributes)
Adds a graphic element.
|
void |
flush()
Flush the writer or the stream, if needed.
|
void |
footer_()
Ends a footer element.
|
void |
footer()
Start a new footer within the section or body.
|
void |
footer(SinkEventAttributes attributes)
Start a new footer within the section or body.
|
protected int |
getCellCount()
Getter for the field
cellCount . |
protected int[] |
getCellJustif()
Getter for the field
cellJustif . |
protected StringBuffer |
getTextBuffer()
To use mainly when playing with the head events.
|
void |
header_()
Ends a header element.
|
void |
header()
Start a new header within the section or body.
|
void |
header(SinkEventAttributes attributes)
Start a new header within the section or body.
|
void |
horizontalRule()
Adding a separator of sections from a text to each other.
|
void |
horizontalRule(SinkEventAttributes attributes)
Adds a horizontal separator rule.
|
protected void |
init()
This is called in
Sink.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()
Starts an inline element.
|
void |
inline(SinkEventAttributes attributes)
Starts an inline element.
|
protected boolean |
isHeadFlag()
isHeadFlag.
|
protected boolean |
isVerbatimFlag()
isVerbatimFlag.
|
void |
italic_()
Ends an italic element.
|
void |
italic()
Starts an italic element.
|
void |
lineBreak()
Adds a line break.
|
void |
lineBreak(SinkEventAttributes attributes)
Adds a line break.
|
void |
lineBreakOpportunity()
Adds a line break opportunity.
|
void |
lineBreakOpportunity(SinkEventAttributes attributes)
Adds a line break opportunity.
|
void |
link_()
Ends a link element.
|
void |
link(String name)
Starts an element which defines a link.
|
void |
link(String name,
SinkEventAttributes attributes)
Starts a link.
|
void |
list_()
Ends an unordered list element.
|
void |
list()
Starts an unordered list element.
|
void |
list(SinkEventAttributes attributes)
Starts an unordered list.
|
void |
listItem_()
Ends a list item element within an unordered list.
|
void |
listItem()
Starts 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 |
navigation_()
Ends the navigation element.
|
void |
navigation()
Starts a navigation section within a document.
|
void |
navigation(SinkEventAttributes attributes)
Starts a navigation section within a document.
|
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)
The default list style depends on the numbering.
|
void |
numberedList(int numbering,
SinkEventAttributes attributes)
The default list style depends on the numbering.
|
void |
numberedListItem_()
Ends a list item element within an ordered list.
|
void |
numberedListItem()
Starts a list item element within an ordered list.
|
void |
numberedListItem(SinkEventAttributes attributes)
Starts a list item element within an ordered list.
|
protected void |
onSection_(int depth)
Ends a section.
|
protected void |
onSection(int depth,
SinkEventAttributes attributes)
Starts a section.
|
protected void |
onSectionTitle_(int depth)
Ends a section title.
|
protected void |
onSectionTitle(int depth,
SinkEventAttributes attributes)
Starts a section title.
|
void |
pageBreak()
Adding a new page separator.
|
void |
paragraph_()
Ends a paragraph element.
|
void |
paragraph()
Starts an element which represents a paragraph.
|
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 |
resetState()
Deprecated.
since 1.1.2, use
init() instead of. |
protected void |
resetTextBuffer()
Reset the text buffer.
|
void |
section_(int level)
Ends a section at the given level.
|
void |
section(int level,
SinkEventAttributes attributes)
Start a new section at the given level.
|
void |
section1_()
Ends a first heading element.
|
void |
section1()
Starts a first heading element which contains the topic of the section.
|
void |
section2_()
Ends a second heading element.
|
void |
section2()
Starts a second heading element which contains the topic of the section.
|
void |
section3_()
Ends a third heading element.
|
void |
section3()
Starts a third heading element which contains the topic of the section.
|
void |
section4_()
Ends a 4th heading element.
|
void |
section4()
Starts a 4th heading element which contains the topic of the section.
|
void |
section5_()
Ends a 5th heading element.
|
void |
section5()
Starts a 5th heading element which contains the topic of the section.
|
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 |
sectionTitle1_()
Ends a first title heading element.
|
void |
sectionTitle1()
Starts a first title heading element.
|
void |
sectionTitle2_()
Ends a second title heading element.
|
void |
sectionTitle2()
Starts a second title heading element.
|
void |
sectionTitle3_()
Ends a third title heading element.
|
void |
sectionTitle3()
Starts a third title heading element.
|
void |
sectionTitle4_()
Ends a 4th title heading element.
|
void |
sectionTitle4()
Starts a 4th title heading element.
|
void |
sectionTitle5_()
Ends a 5th title heading element.
|
void |
sectionTitle5()
Starts a 5th title heading element.
|
protected void |
setCellCount(int count)
Setter for the field
cellCount . |
protected void |
setCellJustif(int[] justif)
Setter for the field
cellJustif . |
protected void |
setHeadFlag(boolean headFlag)
Setter for the field
headFlag . |
protected void |
setVerbatimFlag(boolean verb)
Setter for the field
verbatimFlag . |
void |
sidebar_()
Ends the sidebar element.
|
void |
sidebar()
Starts a sidebar section within a document.
|
void |
sidebar(SinkEventAttributes attributes)
Starts a sidebar section within a document.
|
void |
table_()
Ends a table element.
|
void |
table()
Starts a table element for marking up tabular information in a document.
|
void |
table(SinkEventAttributes attributes)
Starts a table.
|
void |
tableCaption_()
Ends a caption element of a table.
|
void |
tableCaption()
Starts a caption element of a table.
|
void |
tableCaption(SinkEventAttributes attributes)
Starts a table caption.
|
void |
tableCell_()
Ends a cell element.
|
void |
tableCell()
Starts a cell element which defines a cell that contains data.
|
void |
tableCell(SinkEventAttributes attributes)
Starts a table cell.
|
void |
tableCell(String width)
Starts a cell element which defines a cell that contains data.
|
void |
tableHeaderCell_()
Ends a cell header element.
|
void |
tableHeaderCell()
Starts a cell element which defines a cell that contains header information.
|
void |
tableHeaderCell(SinkEventAttributes attributes)
Starts a table header cell.
|
void |
tableHeaderCell(String width)
Starts a cell element which defines a cell that contains header information.
|
void |
tableRow_()
Ends a row element.
|
void |
tableRow()
The default class style is
a or b depending the row id. |
void |
tableRow(SinkEventAttributes attributes)
The default class style is
a or b depending the row id. |
void |
tableRows_()
Ends an element that contains rows of table data.
|
void |
tableRows(int[] justification,
boolean grid)
The default class style is
bodyTable . |
void |
text(String text)
Adding a text.
|
void |
text(String text,
SinkEventAttributes attributes)
Adds a text.
|
void |
time_()
Ends a time element.
|
void |
time(String datetime)
Starts a time element which groups together other elements representing a time.
|
void |
time(String datetime,
SinkEventAttributes attributes)
Starts a time element which groups together other elements representing a time.
|
void |
unknown(String name,
Object[] requiredParams,
SinkEventAttributes attributes)
Add an unknown event.
|
void |
verbatim_()
Ends a verbatim element.
|
void |
verbatim(boolean boxed)
The default class style for boxed is
source . |
void |
verbatim(SinkEventAttributes attributes)
The default class style for boxed is
source . |
protected void |
verbatimContent(String text)
Write HTML escaped text to output.
|
protected void |
write(String text)
Write a text to the sink.
|
protected void |
writeEndTag(HTML.Tag t)
Ends a Tag without writing an EOL.
|
protected void |
writeStartTag(HTML.Tag t,
MutableAttributeSet att,
boolean isSimpleTag)
Starts a Tag with attributes.
|
getNameSpace, setInsertNewline, setNameSpace, writeEOL, writeSimpleTag, writeSimpleTag, writeStartTag, writeStartTag
author_, author, author, body_, body, body, date_, date, date, definitionListItem_, definitionListItem, definitionListItem, head_, head, head, section6_, section6, sectionTitle_, sectionTitle, sectionTitle6_, sectionTitle6, title_, title, title
enableLogging, getLog, unifyEOLs
protected Stack<HTML.Tag> contentStack
protected Stack<List<HTML.Tag>> inlineStack
protected MutableAttributeSet tableAttributes
protected boolean tableRows
tableRows(int[], boolean)
is called or not. It is mainly to be backward compatible
with some plugins (like checkstyle) which uses:
sink.table(); sink.tableRow();instead of
sink.table(); sink.tableRows( justify, true ); sink.tableRow();
public Xhtml5BaseSink(Writer out)
out
- The writer to write the result.protected StringBuffer getTextBuffer()
protected void setHeadFlag(boolean headFlag)
Setter for the field headFlag
.
headFlag
- an header flag.protected boolean isHeadFlag()
isHeadFlag.
protected void setVerbatimFlag(boolean verb)
Setter for the field verbatimFlag
.
verb
- a verbatim flag.protected boolean isVerbatimFlag()
isVerbatimFlag.
protected void setCellJustif(int[] justif)
Setter for the field cellJustif
.
justif
- the new cell justification array.protected int[] getCellJustif()
Getter for the field cellJustif
.
protected void setCellCount(int count)
Setter for the field cellCount
.
count
- the new cell count.protected int getCellCount()
Getter for the field cellCount
.
protected void resetState()
init()
instead of.protected void init()
Sink.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 resetTextBuffer()
public void article()
article
in interface Sink
article
in class SinkAdapter
Sink.article(SinkEventAttributes)
public void article(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
article
in interface Sink
article
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void article_()
article_
in interface Sink
article_
in class SinkAdapter
public void navigation()
navigation
in interface Sink
navigation
in class SinkAdapter
Sink.navigation(SinkEventAttributes)
public void navigation(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
navigation
in interface Sink
navigation
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.Sink.navigation(SinkEventAttributes)
public void navigation_()
navigation_
in interface Sink
navigation_
in class SinkAdapter
public void sidebar()
sidebar
in interface Sink
sidebar
in class SinkAdapter
Sink.sidebar(SinkEventAttributes)
public void sidebar(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
sidebar
in interface Sink
sidebar
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void sidebar_()
sidebar_
in interface Sink
sidebar_
in class SinkAdapter
public void section(int level, SinkEventAttributes attributes)
Sections with higher level have to be entirely contained within sections of lower level.
Supported attributes are the base attributes
.
section
in interface Sink
section
in class SinkAdapter
level
- the section level.attributes
- A set of SinkEventAttributes
, may be null
.public void sectionTitle(int level, SinkEventAttributes attributes)
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.attributes
- A set of SinkEventAttributes
, may be null
.public void sectionTitle_(int level)
sectionTitle_
in interface Sink
sectionTitle_
in class SinkAdapter
level
- the section title level.public void section_(int level)
section_
in interface Sink
section_
in class SinkAdapter
level
- the section level.public void section1()
section1
in interface Sink
section1
in class SinkAdapter
Sink.section(int,SinkEventAttributes)
public void sectionTitle1()
Sink.section1()
element.sectionTitle1
in interface Sink
sectionTitle1
in class SinkAdapter
Sink.sectionTitle(int,SinkEventAttributes)
public void sectionTitle1_()
sectionTitle1_
in interface Sink
sectionTitle1_
in class SinkAdapter
public void section1_()
section1_
in interface Sink
section1_
in class SinkAdapter
public void section2()
Sink.section1()
element.section2
in interface Sink
section2
in class SinkAdapter
Sink.section(int,SinkEventAttributes)
public void sectionTitle2()
Sink.section2()
element.sectionTitle2
in interface Sink
sectionTitle2
in class SinkAdapter
Sink.sectionTitle(int,SinkEventAttributes)
public void sectionTitle2_()
sectionTitle2_
in interface Sink
sectionTitle2_
in class SinkAdapter
public void section2_()
section2_
in interface Sink
section2_
in class SinkAdapter
public void section3()
Sink.section2()
element.section3
in interface Sink
section3
in class SinkAdapter
Sink.section(int,SinkEventAttributes)
public void sectionTitle3()
Sink.section3()
element.sectionTitle3
in interface Sink
sectionTitle3
in class SinkAdapter
Sink.sectionTitle(int,SinkEventAttributes)
public void sectionTitle3_()
sectionTitle3_
in interface Sink
sectionTitle3_
in class SinkAdapter
public void section3_()
section3_
in interface Sink
section3_
in class SinkAdapter
public void section4()
Sink.section3()
element.section4
in interface Sink
section4
in class SinkAdapter
Sink.section(int,SinkEventAttributes)
public void sectionTitle4()
Sink.section4()
element.sectionTitle4
in interface Sink
sectionTitle4
in class SinkAdapter
Sink.sectionTitle(int,SinkEventAttributes)
public void sectionTitle4_()
sectionTitle4_
in interface Sink
sectionTitle4_
in class SinkAdapter
public void section4_()
section4_
in interface Sink
section4_
in class SinkAdapter
public void section5()
Sink.section4()
element.section5
in interface Sink
section5
in class SinkAdapter
Sink.section(int,SinkEventAttributes)
public void sectionTitle5()
Sink.section5()
element.sectionTitle5
in interface Sink
sectionTitle5
in class SinkAdapter
Sink.sectionTitle(int,SinkEventAttributes)
public void sectionTitle5_()
sectionTitle5_
in interface Sink
sectionTitle5_
in class SinkAdapter
public void section5_()
section5_
in interface Sink
section5_
in class SinkAdapter
protected void onSection(int depth, SinkEventAttributes attributes)
section
.depth
- The level of the section.attributes
- some attributes. May be null.protected void onSection_(int depth)
depth
- The level of the section.HTML.Tag.DIV
protected void onSectionTitle(int depth, SinkEventAttributes attributes)
depth
- The level of the section title.attributes
- some attributes. May be null.HTML.Tag.H2
,
HTML.Tag.H3
,
HTML.Tag.H4
,
HTML.Tag.H5
,
HTML.Tag.H6
protected void onSectionTitle_(int depth)
depth
- The level of the section title.HTML.Tag.H2
,
HTML.Tag.H3
,
HTML.Tag.H4
,
HTML.Tag.H5
,
HTML.Tag.H6
public void header()
header
in interface Sink
header
in class SinkAdapter
public void header(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
header
in interface Sink
header
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void header_()
header_
in interface Sink
header_
in class SinkAdapter
public void content()
content
in interface Sink
content
in class SinkAdapter
public void content(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
content
in interface Sink
content
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void content_()
content_
in interface Sink
content_
in class SinkAdapter
public void footer()
footer
in interface Sink
footer
in class SinkAdapter
public void footer(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
footer
in interface Sink
footer
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void footer_()
footer_
in interface Sink
footer_
in class SinkAdapter
public void list()
list
in interface Sink
list
in class SinkAdapter
HTML.Tag.UL
public void list(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
list
in interface Sink
list
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.HTML.Tag.UL
public void list_()
list_
in interface Sink
list_
in class SinkAdapter
HTML.Tag.UL
public void listItem()
listItem
in interface Sink
listItem
in class SinkAdapter
HTML.Tag.LI
public void listItem(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
listItem
in interface Sink
listItem
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.HTML.Tag.LI
public void listItem_()
listItem_
in interface Sink
listItem_
in class SinkAdapter
HTML.Tag.LI
public void numberedList(int numbering)
numberedList
in interface Sink
numberedList
in class SinkAdapter
numbering
- the numbering style.HTML.Tag.OL
public void numberedList(int numbering, SinkEventAttributes attributes)
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
.HTML.Tag.OL
public void numberedList_()
numberedList_
in interface Sink
numberedList_
in class SinkAdapter
HTML.Tag.OL
public void numberedListItem()
numberedListItem
in interface Sink
numberedListItem
in class SinkAdapter
HTML.Tag.LI
public void numberedListItem(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
numberedListItem
in interface Sink
numberedListItem
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.HTML.Tag.LI
public void numberedListItem_()
numberedListItem_
in interface Sink
numberedListItem_
in class SinkAdapter
HTML.Tag.LI
public void definitionList()
definitionList
in interface Sink
definitionList
in class SinkAdapter
HTML.Tag.DL
public void definitionList(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
definitionList
in interface Sink
definitionList
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.HTML.Tag.DL
public void definitionList_()
definitionList_
in interface Sink
definitionList_
in class SinkAdapter
HTML.Tag.DL
public void definedTerm(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
definedTerm
in interface Sink
definedTerm
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.HTML.Tag.DT
public void definedTerm()
definedTerm
in interface Sink
definedTerm
in class SinkAdapter
HTML.Tag.DT
public void definedTerm_()
definedTerm_
in interface Sink
definedTerm_
in class SinkAdapter
HTML.Tag.DT
public void definition()
definition
in interface Sink
definition
in class SinkAdapter
HTML.Tag.DD
public void definition(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
definition
in interface Sink
definition
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.HTML.Tag.DD
public void definition_()
definition_
in interface Sink
definition_
in class SinkAdapter
HTML.Tag.DD
public void figure()
figure
in interface Sink
figure
in class SinkAdapter
Sink.figure(SinkEventAttributes)
public void figure(SinkEventAttributes attributes)
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 figure_()
figure_
in interface Sink
figure_
in class SinkAdapter
public void figureGraphics(String name)
figureGraphics
in interface Sink
figureGraphics
in class SinkAdapter
name
- the sourcepublic void figureGraphics(String src, SinkEventAttributes attributes)
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
src
- the image source, a valid URL.attributes
- A set of SinkEventAttributes
, may be null
.Sink.figure(SinkEventAttributes)
public void figureCaption()
figureCaption
in interface Sink
figureCaption
in class SinkAdapter
Sink.figureCaption(SinkEventAttributes)
public void figureCaption(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
figureCaption
in interface Sink
figureCaption
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.Sink.figure(SinkEventAttributes)
public void figureCaption_()
figureCaption_
in interface Sink
figureCaption_
in class SinkAdapter
public void paragraph()
paragraph
in interface Sink
paragraph
in class SinkAdapter
HTML.Tag.P
public void paragraph(SinkEventAttributes attributes)
Supported attributes are the base attributes
plus ALIGN
.
paragraph
in interface Sink
paragraph
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.HTML.Tag.P
public void paragraph_()
paragraph_
in interface Sink
paragraph_
in class SinkAdapter
HTML.Tag.P
public void data(String value)
data
in interface Sink
data
in class SinkAdapter
value
- a String
object.Sink.data(String, SinkEventAttributes)
public void data(String value, SinkEventAttributes attributes)
Supported attributes are the base attributes
plus VALUE
.
data
in interface Sink
data
in class SinkAdapter
value
- the machine readable value of the data, may be null
.attributes
- A set of SinkEventAttributes
, may be null
.public void data_()
data_
in interface Sink
data_
in class SinkAdapter
public void time(String datetime)
time
in interface Sink
time
in class SinkAdapter
Sink.time(String, SinkEventAttributes)
public void time(String datetime, SinkEventAttributes attributes)
Supported attributes are the base attributes
plus DATETIME
.
time
in interface Sink
time
in class SinkAdapter
datetime
- the machine readable value of the time, may be null
.attributes
- A set of SinkEventAttributes
, may be null
.public void time_()
time_
in interface Sink
time_
in class SinkAdapter
public void address()
address
in interface Sink
address
in class SinkAdapter
HTML.Tag.ADDRESS
public void address(SinkEventAttributes attributes)
address
in interface Sink
address
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.HTML.Tag.ADDRESS
public void address_()
address_
in interface Sink
address_
in class SinkAdapter
HTML.Tag.ADDRESS
public void blockquote()
blockquote
in interface Sink
blockquote
in class SinkAdapter
HTML.Tag.BLOCKQUOTE
public void blockquote(SinkEventAttributes attributes)
Supported attributes are the base attributes
.
blockquote
in interface Sink
blockquote
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.HTML.Tag.BLOCKQUOTE
public void blockquote_()
blockquote_
in interface Sink
blockquote_
in class SinkAdapter
HTML.Tag.BLOCKQUOTE
public void division()
division
in interface Sink
division
in class SinkAdapter
HTML.Tag.DIV
public void division(SinkEventAttributes attributes)
Supported attributes are the base attributes
plus ALIGN
.
division
in interface Sink
division
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.HTML.Tag.DIV
public void division_()
division_
in interface Sink
division_
in class SinkAdapter
HTML.Tag.DIV
public void verbatim(boolean boxed)
source
.
Starts an element which indicates that whitespace in the enclosed text has semantic relevance.verbatim
in interface Sink
verbatim
in class SinkAdapter
boxed
- true to add a box, false otherwiseHTML.Tag.DIV
,
HTML.Tag.PRE
public void verbatim(SinkEventAttributes attributes)
source
.
Starts a verbatim block, ie a block where whitespace has semantic relevance.
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
(value: "boxed"),ALIGN
,WIDTH
.
verbatim
in interface Sink
verbatim
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.HTML.Tag.DIV
,
HTML.Tag.PRE
public void verbatim_()
verbatim_
in interface Sink
verbatim_
in class SinkAdapter
HTML.Tag.DIV
,
HTML.Tag.PRE
public void horizontalRule()
horizontalRule
in interface Sink
horizontalRule
in class SinkAdapter
HTML.Tag.HR
public void horizontalRule(SinkEventAttributes attributes)
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
.HTML.Tag.HR
public void table()
table
in interface Sink
table
in class SinkAdapter
Sink.table(SinkEventAttributes)
public void table(SinkEventAttributes attributes)
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 table_()
table_
in interface Sink
table_
in class SinkAdapter
HTML.Tag.TABLE
public void tableRows(int[] justification, boolean grid)
bodyTable
.
The default align is center
.
Starts an element that contains rows of table data.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.HTML.Tag.TABLE
public void tableRows_()
tableRows_
in interface Sink
tableRows_
in class SinkAdapter
public void tableRow()
a
or b
depending the row id.
Starts a row element which acts as a container for a row of table cells.tableRow
in interface Sink
tableRow
in class SinkAdapter
HTML.Tag.TR
public void tableRow(SinkEventAttributes attributes)
a
or b
depending the row id.
Starts a table row.
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
.HTML.Tag.TR
public void tableRow_()
tableRow_
in interface Sink
tableRow_
in class SinkAdapter
HTML.Tag.TR
public void tableCell()
tableCell
in interface Sink
tableCell
in class SinkAdapter
Sink.tableCell(SinkEventAttributes)
public void tableHeaderCell()
tableHeaderCell
in interface Sink
tableHeaderCell
in class SinkAdapter
Sink.tableHeaderCell(SinkEventAttributes)
public void tableCell(String width)
tableCell
in interface Sink
tableCell
in class SinkAdapter
width
- the size of the cell.public void tableHeaderCell(String width)
tableHeaderCell
in interface Sink
tableHeaderCell
in class SinkAdapter
width
- the size of the header cell.public void tableCell(SinkEventAttributes attributes)
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)
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_()
tableCell_
in interface Sink
tableCell_
in class SinkAdapter
public void tableHeaderCell_()
tableHeaderCell_
in interface Sink
tableHeaderCell_
in class SinkAdapter
public void tableCaption()
tableCaption
in interface Sink
tableCaption
in class SinkAdapter
HTML.Tag.CAPTION
public void tableCaption(SinkEventAttributes attributes)
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
.HTML.Tag.CAPTION
public void tableCaption_()
tableCaption_
in interface Sink
tableCaption_
in class SinkAdapter
HTML.Tag.CAPTION
public void anchor(String name)
anchor
in interface Sink
anchor
in class SinkAdapter
name
- the name of the anchor.HTML.Tag.A
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
.HTML.Tag.A
public void anchor_()
anchor_
in interface Sink
anchor_
in class SinkAdapter
HTML.Tag.A
public void link(String name)
link
in interface Sink
link
in class SinkAdapter
name
- the name of the link.Sink.link(String,SinkEventAttributes)
public void link(String name, SinkEventAttributes attributes)
The name
parameter has to be a valid html href
parameter, ie for internal links (links to an anchor within the same source
document), name
should start with the character "#".
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
.public void link_()
link_
in interface Sink
link_
in class SinkAdapter
HTML.Tag.A
public void inline()
inline
in interface Sink
inline
in class SinkAdapter
Sink.inline(SinkEventAttributes)
public void inline(SinkEventAttributes attributes)
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_()
inline_
in interface Sink
inline_
in class SinkAdapter
public void italic()
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.italic
in interface Sink
italic
in class SinkAdapter
HTML.Tag.I
public void italic_()
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.italic_
in interface Sink
italic_
in class SinkAdapter
HTML.Tag.I
public void bold()
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.bold
in interface Sink
bold
in class SinkAdapter
HTML.Tag.B
public void bold_()
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.bold_
in interface Sink
bold_
in class SinkAdapter
HTML.Tag.B
public void monospaced()
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.monospaced
in interface Sink
monospaced
in class SinkAdapter
HTML.Tag.CODE
public void monospaced_()
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.monospaced_
in interface Sink
monospaced_
in class SinkAdapter
HTML.Tag.CODE
public void lineBreak()
lineBreak
in interface Sink
lineBreak
in class SinkAdapter
HTML.Tag.BR
public void lineBreak(SinkEventAttributes attributes)
lineBreak
in interface Sink
lineBreak
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.HTML.Tag.BR
public void lineBreakOpportunity()
lineBreakOpportunity
in interface Sink
lineBreakOpportunity
in class SinkAdapter
Sink.lineBreak(SinkEventAttributes)
public void lineBreakOpportunity(SinkEventAttributes attributes)
lineBreakOpportunity
in interface Sink
lineBreakOpportunity
in class SinkAdapter
attributes
- A set of SinkEventAttributes
, may be null
.public void pageBreak()
pageBreak
in interface Sink
pageBreak
in class SinkAdapter
public void nonBreakingSpace()
nonBreakingSpace
in interface Sink
nonBreakingSpace
in class SinkAdapter
public void text(String text)
text
in interface Sink
text
in class SinkAdapter
text
- The text to write.Sink.text(String,SinkEventAttributes)
public void text(String text, SinkEventAttributes attributes)
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)
rawText
in interface Sink
rawText
in class SinkAdapter
text
- The text to write.public void comment(String comment)
comment
in interface Sink
comment
in class SinkAdapter
comment
- The comment to write.public void unknown(String name, Object[] requiredParams, SinkEventAttributes attributes)
If HtmlTools.getHtmlTag( name )
does not return null, the corresponding tag will be written.
For example, the div block
<div class="detail" style="display:inline">text</div>
can be generated via the following event sequence:
SinkEventAttributeSet atts = new SinkEventAttributeSet(); atts.addAttribute( SinkEventAttributes.CLASS, "detail" ); atts.addAttribute( SinkEventAttributes.STYLE, "display:inline" ); sink.unknown( "div", new Object[]{new Integer( HtmlMarkup.TAG_TYPE_START )}, atts ); sink.text( "text" ); sink.unknown( "div", new Object[]{new Integer( HtmlMarkup.TAG_TYPE_END )}, null );
unknown
in interface Sink
unknown
in class SinkAdapter
name
- the name of the event. If this is not a valid xhtml tag name
as defined in HtmlMarkup
then the event is ignored.requiredParams
- If this is null or the first argument is not an Integer then the event is ignored.
The first argument should indicate the type of the unknown event, its integer value should be one of
TAG_TYPE_START
,
TAG_TYPE_END
,
TAG_TYPE_SIMPLE
,
ENTITY_TYPE
, or
CDATA_TYPE
,
otherwise the event will be ignored.attributes
- a set of attributes for the event. May be null.
The attributes will always be written, no validity check is performed.public void flush()
flush
in interface Sink
flush
in class SinkAdapter
public void close()
close
in interface Sink
close
in class SinkAdapter
protected void content(String text)
text
- The text to write.protected void verbatimContent(String text)
text
- The text to write.protected static String escapeHTML(String text)
text
- the String to escape, may be nullHtmlTools.escapeHTML(String)
protected static String encodeURL(String text)
text
- the String to encode, may be null.HtmlTools.encodeURL(String)
protected void write(String text)
write
in class AbstractXmlSink
text
- the given text to writeprotected void writeStartTag(HTML.Tag t, MutableAttributeSet att, boolean isSimpleTag)
<tag attName="attValue">
writeStartTag
in class AbstractXmlSink
t
- a non null tag.att
- a set of attributes. May be null.isSimpleTag
- boolean to write as a simple tag.protected void writeEndTag(HTML.Tag t)
</tag>.
writeEndTag
in class AbstractXmlSink
t
- a tag.Copyright © 2005–2021 The Apache Software Foundation. All rights reserved.