Clover coverage report - QedeqKernelSe Coverage Report
Coverage timestamp: Do Jan 11 2007 09:03:50 CET
file stats: LOC: 77   Methods: 1
NCLOC: 44   Classes: 1
 
 Source file Conditionals Statements Methods TOTAL
SaxEntityResolver.java 60% 78,3% 100% 73,5%
coverage coverage
 1    /* $Id: SaxEntityResolver.java,v 1.15 2006/10/20 20:23:04 m31 Exp $
 2    *
 3    * This file is part of the project "Hilbert II" - http://www.qedeq.org
 4    *
 5    * Copyright 2000-2006, Michael Meyling <mime@qedeq.org>.
 6    *
 7    * "Hilbert II" is free software; you can redistribute
 8    * it and/or modify it under the terms of the GNU General Public
 9    * License as published by the Free Software Foundation; either
 10    * version 2 of the License, or (at your option) any later version.
 11    *
 12    * This program is distributed in the hope that it will be useful,
 13    * but WITHOUT ANY WARRANTY; without even the implied warranty of
 14    * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 15    * GNU General Public License for more details.
 16    */
 17   
 18    package org.qedeq.kernel.xml.parser;
 19   
 20    import java.io.FileNotFoundException;
 21    import java.io.InputStream;
 22   
 23    import org.qedeq.kernel.context.KernelContext;
 24    import org.qedeq.kernel.log.Trace;
 25    import org.xml.sax.EntityResolver;
 26    import org.xml.sax.InputSource;
 27   
 28   
 29    /**
 30    * Resolve qedeq schema.
 31    *
 32    * @version $Revision: 1.15 $
 33    * @author Michael Meyling
 34    */
 35    public final class SaxEntityResolver implements EntityResolver {
 36   
 37    /* (non-Javadoc)
 38    * @see org.xml.sax.EntityResolver#resolveEntity(java.lang.String, java.lang.String)
 39    */
 40  216 public InputSource resolveEntity(final String publicId, final String systemId)
 41    throws FileNotFoundException {
 42  216 final String method = "resolveEntity";
 43  216 Trace.param(this, method, "systemId", systemId);
 44  216 Trace.param(this, method, "publicId", publicId);
 45  216 if ((systemId == null)) {
 46  0 return null;
 47    }
 48  216 if (systemId.equals("http://www.qedeq.org/" + KernelContext.getKernelVersionDirectory()
 49    + "/xml/qedeq.xsd")) {
 50  54 InputStream in = SaxEntityResolver.class.getResourceAsStream(
 51    "/org/qedeq/kernel/xml/schema/qedeq.xsd");
 52  54 if (in == null) {
 53  0 throw new FileNotFoundException("/org/qedeq/kernel/xml/schema/qedeq.xsd");
 54    }
 55  54 InputSource inputSource = new InputSource(in);
 56  54 inputSource.setPublicId(publicId);
 57  54 inputSource.setSystemId(systemId);
 58  54 return inputSource;
 59  162 } else if (systemId.equals("http://www.qedeq.org/"
 60    + KernelContext.getKernelVersionDirectory()
 61    + "/xml/parser.xsd")) {
 62  162 InputStream in = SaxEntityResolver.class.getResourceAsStream(
 63    "/org/qedeq/kernel/xml/schema/parser.xsd");
 64  162 if (in == null) {
 65  0 throw new FileNotFoundException("/org/qedeq/kernel/xml/schema/parser.xsd");
 66    }
 67  162 InputSource inputSource = new InputSource(in);
 68  162 inputSource.setPublicId(publicId);
 69  162 inputSource.setSystemId(systemId);
 70  162 return inputSource;
 71    }
 72   
 73    // TODO mime 20050205: do anything else? e.g. warn someone?
 74  0 Trace.trace(this, method, "unknown entity");
 75  0 return null;
 76    }
 77    }