Class XdocSink

    • Field Detail

      • encoding

        private java.lang.String encoding
      • languageId

        private java.lang.String languageId
    • Constructor Detail

      • XdocSink

        protected XdocSink​(java.io.Writer writer)
        Constructor, initialize the Writer.
        Parameters:
        writer - not null writer to write the result. Should be an UTF-8 Writer. You could use newXmlWriter methods from WriterFactory.
      • XdocSink

        protected XdocSink​(java.io.Writer writer,
                           java.lang.String encoding)
        Constructor, initialize the Writer and tells which encoding is used.
        Parameters:
        writer - not null writer to write the result.
        encoding - the encoding used, that should be written to the generated HTML content if not null.
        Since:
        1.1
      • XdocSink

        protected XdocSink​(java.io.Writer writer,
                           java.lang.String encoding,
                           java.lang.String languageId)
        Constructor, initialize the Writer and tells which encoding and languageId are used.
        Parameters:
        writer - not null writer to write the result.
        encoding - the encoding used, that should be written to the generated HTML content if not null.
        languageId - language identifier for the root element as defined by IETF BCP 47, Tags for the Identification of Languages; in addition, the empty string may be specified.
        Since:
        1.1
    • Method Detail

      • head

        public void head​(SinkEventAttributes attributes)
        Starts the head element.

        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.
        Specified by:
        head in interface Sink
        Overrides:
        head in class SinkAdapter
        Parameters:
        attributes - A set of SinkEventAttributes, may be null.
        See Also:
        XdocMarkup.DOCUMENT_TAG, XdocMarkup.PROPERTIES_TAG
      • title_

        public void title_()
        Ends the title element.
        Specified by:
        title_ in interface Sink
        Overrides:
        title_ in class SinkAdapter
        See Also:
        HTML.Tag.TITLE
      • verbatim

        public void verbatim​(SinkEventAttributes attributes)
        Depending on whether the decoration attribute is "source" or not, this leads to either emitting <pre><code> or just <pre>. No default classes are emitted but the given attributes are always added to the pre element only. 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 (values: "source"), ALIGN, WIDTH.
        Specified by:
        verbatim in interface Sink
        Overrides:
        verbatim in class Xhtml5BaseSink
        Parameters:
        attributes - a SinkEventAttributes object.
        See Also:
        XdocMarkup.SOURCE_TAG, HTML.Tag.PRE
      • tableRows

        public void tableRows​(int[] justification,
                              boolean grid)
        The default style class is bodyTable.
        Specified by:
        tableRows in interface Sink
        Overrides:
        tableRows in class Xhtml5BaseSink
        Parameters:
        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 - if true the style class bodyTableBorder will be added if true the style class bodyTableBorder will be added true to provide a grid, false otherwise.
        See Also:
        HTML.Tag.TABLE
      • tableRow

        public void tableRow​(SinkEventAttributes attributes)
        Rows are striped with two colors by adding the class a or b. If the provided attributes specify the hidden class, the next call to tableRow will set the same striping class as this one. A style for hidden or table.bodyTable hidden may need to be provided to actually hide such a row. Starts a table row.

        Supported attributes are the base attributes plus:

        ALIGN, BGCOLOR, VALIGN.
        Specified by:
        tableRow in interface Sink
        Overrides:
        tableRow in class Xhtml5BaseSink
        Parameters:
        attributes - A set of SinkEventAttributes, may be null.
        See Also:
        HTML.Tag.TR
      • close

        public void close()

        close.

        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface Sink
        Overrides:
        close in class Xhtml5BaseSink