EMMA Coverage Report (generated Fri Feb 14 08:28:31 UTC 2014)
[all classes][org.qedeq.kernel.xml.handler.module]

COVERAGE SUMMARY FOR SOURCE FILE [QedeqHandler.java]

nameclass, %method, %block, %line, %
QedeqHandler.java100% (1/1)100% (5/5)100% (133/133)100% (27/27)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class QedeqHandler100% (1/1)100% (5/5)100% (133/133)100% (27/27)
QedeqHandler (SaxDefaultHandler): void 100% (1/1)100% (23/23)100% (5/5)
endElement (String): void 100% (1/1)100% (49/49)100% (9/9)
getQedeq (): Qedeq 100% (1/1)100% (3/3)100% (1/1)
init (): void 100% (1/1)100% (4/4)100% (2/2)
startElement (String, SimpleAttributes): void 100% (1/1)100% (54/54)100% (10/10)

1/* This file is part of the project "Hilbert II" - http://www.qedeq.org
2 *
3 * Copyright 2000-2014,  Michael Meyling <mime@qedeq.org>.
4 *
5 * "Hilbert II" is free software; you can redistribute
6 * it and/or modify it under the terms of the GNU General Public
7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 */
15 
16package org.qedeq.kernel.xml.handler.module;
17 
18import org.qedeq.kernel.se.base.module.Qedeq;
19import org.qedeq.kernel.se.dto.module.QedeqVo;
20import org.qedeq.kernel.xml.common.XmlSyntaxException;
21import org.qedeq.kernel.xml.handler.common.AbstractSimpleHandler;
22import org.qedeq.kernel.xml.handler.common.SaxDefaultHandler;
23import org.qedeq.kernel.xml.handler.common.SimpleAttributes;
24 
25 
26/**
27 * Parses complete qedeq modules.
28 *
29 * @version $Revision: 1.1 $
30 * @author  Michael Meyling
31 */
32public class QedeqHandler extends AbstractSimpleHandler {
33 
34    /** Module header handler. */
35    private final HeaderHandler headerHandler;
36 
37    /** Handles a single chapter. */
38    private final ChapterHandler chapterHandler;
39 
40    /** Handles a bibliography. */
41    private final LiteratureItemListHandler bibliographyHandler;
42 
43    /** Root value object for a module. */
44    private QedeqVo qedeq;
45 
46 
47    /**
48     * Handle a qedeq module.
49     *
50     * @param   defaultHandler  Startup handler.
51     */
52    public QedeqHandler(final SaxDefaultHandler defaultHandler) {
53        super(defaultHandler, "QEDEQ");
54        headerHandler = new HeaderHandler(this);
55        chapterHandler = new ChapterHandler(this);
56        bibliographyHandler = new LiteratureItemListHandler(this);
57    }
58 
59    public final void init() {
60        qedeq = null;
61    }
62 
63    /**
64     * Get qedeq value object.
65     *
66     * @return  Qedeq object.
67     */
68    public final Qedeq getQedeq() {
69        return qedeq;
70    }
71 
72    public final void startElement(final String name, final SimpleAttributes attributes)
73            throws XmlSyntaxException {
74        if (getStartTag().equals(name)) {
75            qedeq = new QedeqVo();
76        } else if (headerHandler.getStartTag().equals(name)) {
77            changeHandler(headerHandler, name, attributes);
78        } else if (chapterHandler.getStartTag().equals(name)) {
79            changeHandler(chapterHandler, name, attributes);
80        } else if (bibliographyHandler.getStartTag().equals(name)) {
81            changeHandler(bibliographyHandler, name, attributes);
82        } else {
83            throw XmlSyntaxException.createUnexpectedTagException(name);
84        }
85    }
86 
87    public final void endElement(final String name) throws XmlSyntaxException {
88        if (getStartTag().equals(name)) {
89            // nothing to do
90        } else if (headerHandler.getStartTag().equals(name)) {
91            qedeq.setHeader(headerHandler.getHeader());
92        } else if (chapterHandler.getStartTag().equals(name)) {
93            qedeq.addChapter(chapterHandler.getChapter());
94        } else if (bibliographyHandler.getStartTag().equals(name)) {
95            qedeq.setLiteratureItemList(bibliographyHandler.getLiteratureItemList());
96        } else {
97            throw XmlSyntaxException.createUnexpectedTagException(name);
98        }
99    }
100 
101}

[all classes][org.qedeq.kernel.xml.handler.module]
EMMA 2.1.5320 (stable) (C) Vladimir Roubtsov