Clover Coverage Report
Coverage timestamp: Fri May 24 2013 13:47:27 UTC
../../../../../../img/srcFileCovDistChart9.png 45% of files have more coverage
16   90   11   3.2
12   42   0.69   5
5     2.2  
1    
 
  ImportListHandler       Line # 31 16 11 87.9% 0.8787879
 
  (5)
 
1    /* This file is part of the project "Hilbert II" - http://www.qedeq.org
2    *
3    * Copyright 2000-2013, 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   
16    package org.qedeq.kernel.xml.handler.module;
17   
18    import org.qedeq.kernel.se.dto.module.ImportListVo;
19    import org.qedeq.kernel.se.dto.module.ImportVo;
20    import org.qedeq.kernel.xml.common.XmlSyntaxException;
21    import org.qedeq.kernel.xml.handler.common.AbstractSimpleHandler;
22    import org.qedeq.kernel.xml.handler.common.SimpleAttributes;
23   
24   
25    /**
26    * Parse author list.
27    *
28    * @version $Revision: 1.1 $
29    * @author Michael Meyling
30    */
 
31    public class ImportListHandler extends AbstractSimpleHandler {
32   
33    /** Value object with list of all module imports. */
34    private ImportListVo list;
35   
36    /** Handler for a single module specification. */
37    private final SpecificationHandler specificationHandler;
38   
39    /** Label for a single module. */
40    private String label;
41   
42   
43    /**
44    * Handles list of imports.
45    *
46    * @param handler Parent handler.
47    */
 
48  614 toggle public ImportListHandler(final AbstractSimpleHandler handler) {
49  614 super(handler, "IMPORTS");
50  614 specificationHandler = new SpecificationHandler(this);
51    }
52   
 
53  370 toggle public final void init() {
54  370 list = null;
55    }
56   
57    /**
58    * Get parsed result.
59    *
60    * @return Location list.
61    */
 
62  370 toggle public final ImportListVo getImportList() {
63  370 return list;
64    }
65   
 
66  1366 toggle public final void startElement(final String name, final SimpleAttributes attributes)
67    throws XmlSyntaxException {
68  1366 if (getStartTag().equals(name)) {
69  370 list = new ImportListVo();
70  996 } else if ("IMPORT".equals(name)) {
71  498 label = attributes.getString("label");
72  498 } else if (specificationHandler.getStartTag().equals(name)) {
73  498 changeHandler(specificationHandler, name, attributes);
74    } else {
75  0 throw XmlSyntaxException.createUnexpectedTagException(name);
76    }
77    }
78   
 
79  1366 toggle public final void endElement(final String name) throws XmlSyntaxException {
80  1366 if (getStartTag().equals(name)) {
81    // nothing to do
82  996 } else if (specificationHandler.getStartTag().equals(name)) {
83    // nothing to do
84  498 } else if ("IMPORT".equals(name)) {
85  498 list.add(new ImportVo(label, specificationHandler.getSpecification()));
86    } else {
87  0 throw XmlSyntaxException.createUnexpectedTagException(name);
88    }
89    }
90    }