public class XhtmlBaseSink extends AbstractXmlSink implements HtmlMarkup
Modifier and Type | Field and Description |
---|---|
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, B, BASE, BASEFONT, BDO, BIG, BLOCKQUOTE, BODY, BR, BUTTON, CAPTION, CDATA_TYPE, CENTER, CITE, CODE, COL, COLGROUP, DD, DEL, DFN, DIR, DIV, DL, DT, EM, ENTITY_TYPE, FIELDSET, FONT, FORM, FRAME, FRAMESET, H1, H2, H3, H4, H5, H6, HEAD, HR, HTML, I, IFRAME, IMG, INPUT, INS, ISINDEX, KBD, LABEL, LEGEND, LI, LINK, MAP, MENU, META, NOFRAMES, NOSCRIPT, OBJECT, OL, OPTGROUP, OPTION, P, PARAM, PRE, Q, S, SAMP, SCRIPT, SELECT, SMALL, SPAN, STRIKE, STRONG, STYLE, SUB, SUP, TABLE, TAG_TYPE_END, TAG_TYPE_SIMPLE, TAG_TYPE_START, TBODY, TD, TEXTAREA, TFOOT, TH, THEAD, TITLE, TR, TT, U, UL, VAR
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 |
---|
XhtmlBaseSink(Writer out)
Constructor, initialize the PrintWriter.
|
Modifier and Type | Method and Description |
---|---|
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 |
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.
|
protected void |
content(String text)
Write HTML escaped text to output.
|
void |
definedTerm_()
Starts 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.
|
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()
Deprecated.
Use
figure(SinkEventAttributes) , this method is only kept for
backward compatibility. Note that the behavior is different though, as this method
writes an img tag, while correctly the img tag should be written by figureGraphics(). |
void |
figure(SinkEventAttributes attributes)
Starts a basic image embedding element.
|
void |
figureCaption_()
Ends a caption of an image.
|
void |
figureCaption()
Deprecated.
Use
figureCaption(SinkEventAttributes) ,
this method is only kept for backward compatibility. Note that the behavior is
different though, as this method only writes an alt attribute. |
void |
figureCaption(SinkEventAttributes attributes)
Starts a figure caption.
|
void |
figureGraphics(String name)
Deprecated.
Use
figureGraphics(String,SinkEventAttributes) ,
this method is only kept for backward compatibility. Note that the behavior is
different though, as this method does not write the img tag, only the src attribute. |
void |
figureGraphics(String src,
SinkEventAttributes attributes)
Adds a graphic element.
|
void |
flush()
Flush the writer or the stream, if needed.
|
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 |
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. |
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 |
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 |
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 |
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 |
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 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 XhtmlBaseSink(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 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.HTML.Tag.DIV
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 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(SinkEventAttributes)
, this method is only kept for
backward compatibility. Note that the behavior is different though, as this method
writes an img tag, while correctly the img tag should be written by figureGraphics().figure
in interface Sink
figure
in class SinkAdapter
HTML.Tag.IMG
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
.HTML.Tag.IMG
public void figure_()
figure_
in interface Sink
figure_
in class SinkAdapter
public void figureGraphics(String name)
figureGraphics(String,SinkEventAttributes)
,
this method is only kept for backward compatibility. Note that the behavior is
different though, as this method does not write the img tag, only the src attribute.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(SinkEventAttributes)
,
this method is only kept for backward compatibility. Note that the behavior is
different though, as this method only writes an alt attribute.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 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 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.TT
public void monospaced_()
Sink.text(String,SinkEventAttributes)
with
STYLE
instead.monospaced_
in interface Sink
monospaced_
in class SinkAdapter
HTML.Tag.TT
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 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
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–2016 The Apache Software Foundation. All rights reserved.