protected void handleEndTag()

in doxia-modules/doxia-module-xdoc/src/main/java/org/apache/maven/doxia/module/xdoc/XdocParser.java [195:242]


    protected void handleEndTag(XmlPullParser parser, Sink sink)
            throws XmlPullParserException, MacroExecutionException {
        if (parser.getName().equals(DOCUMENT_TAG.toString())) {
            // Do nothing
            return;
        } else if (parser.getName().equals(HEAD.toString())) {
            // Do nothing, head is closed with BODY start.
        } else if (parser.getName().equals(BODY.toString())) {
            consecutiveSections(0, sink);

            sink.body_();
        } else if (parser.getName().equals(TITLE.toString())) {
            if (!hasTitle) {
                sink.title_();
                this.hasTitle = true;
            }
        } else if (parser.getName().equals(AUTHOR_TAG.toString())) {
            sink.author_();
        } else if (parser.getName().equals(DATE_TAG.toString())) {
            sink.date_();
        } else if (parser.getName().equals(SOURCE_TAG.toString())) {
            verbatim_();

            sink.verbatim_();
        } else if (parser.getName().equals(PROPERTIES_TAG.toString())) {
            // Do nothing, head is closed with BODY start.
        } else if (parser.getName().equals(MACRO_TAG.toString())) {
            handleMacroEnd(sink);
        } else if (parser.getName().equals(PARAM.toString())) {
            if (!(macroName != null && !macroName.isEmpty())) {
                handleUnknown(parser, sink, TAG_TYPE_END);
            }
        } else if (parser.getName().equals(SECTION_TAG.toString())) {
            consecutiveSections(0, sink);

            sink.section1_();
        } else if (parser.getName().equals(SUBSECTION_TAG.toString())) {
            consecutiveSections(Sink.SECTION_LEVEL_1, sink);

            // sink.section2_() not necessary
        } else if (!baseEndTag(parser, sink)) {
            if (!isEmptyElement) {
                handleUnknown(parser, sink, TAG_TYPE_END);
            }
        }

        isEmptyElement = false;
    }