EMMA Coverage Report (generated Fri Feb 14 08:28:31 UTC 2014)
[all classes][org.qedeq.kernel.bo.logic.common]

COVERAGE SUMMARY FOR SOURCE FILE [LogicalCheckException.java]

nameclass, %method, %block, %line, %
LogicalCheckException.java100% (1/1)60%  (3/5)56%  (28/50)82%  (9/11)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class LogicalCheckException100% (1/1)60%  (3/5)56%  (28/50)82%  (9/11)
getElement (): Element 0%   (0/1)0%   (0/3)0%   (0/1)
toString (): String 0%   (0/1)0%   (0/19)0%   (0/1)
LogicalCheckException (int, String, Element, ModuleContext): void 100% (1/1)100% (9/9)100% (3/3)
LogicalCheckException (int, String, Element, ModuleContext, ModuleContext): void 100% (1/1)100% (10/10)100% (3/3)
LogicalCheckException (int, String, ModuleContext): void 100% (1/1)100% (9/9)100% (3/3)

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.bo.logic.common;
17 
18import org.qedeq.kernel.se.base.list.Element;
19import org.qedeq.kernel.se.common.ModuleContext;
20import org.qedeq.kernel.se.common.ModuleDataException;
21 
22/**
23 * This is the basis for an exception for logical errors within a QEDEQ module.
24 *
25 * @author  Michael Meyling
26 */
27public abstract class LogicalCheckException extends ModuleDataException {
28 
29    /**
30     * This element causes the error.
31     */
32    private final Element element;
33 
34    /**
35     * Constructs an exception.
36     *
37     * @param   errorCode           ErrorCode of this message.
38     * @param   message             What is the problem.
39     * @param   element             Problematic line.
40     * @param   context             Error location.
41     * @param   referenceContext    Reference location.
42     */
43    public LogicalCheckException(final int errorCode, final String message, final Element element,
44            final ModuleContext context, final ModuleContext referenceContext) {
45        super(errorCode, message, context, referenceContext);
46        this.element = element;
47    }
48 
49    /**
50     * Constructs an exception.
51     *
52     * @param  errorCode        ErrorCode of this message.
53     * @param  message          What is the problem.
54     * @param  element          Problematic formula.
55     * @param  context          Error location.
56     */
57    public LogicalCheckException(final int errorCode, final String message,
58            final Element element, final ModuleContext context) {
59        super(errorCode, message, context);
60        this.element = element;
61    }
62 
63    /**
64     * Constructs an exception.
65     *
66     * @param  errorCode        ErrorCode of this message.
67     * @param  message          What is the problem.
68     * @param  context          Error location.
69     */
70    public LogicalCheckException(final int errorCode, final String message,
71            final ModuleContext context) {
72        super(errorCode, message, context);
73        this.element = null;
74    }
75 
76    /**
77     * Get the problematic element. Might be <code>null</code>.
78     *
79     * @return  Element.
80     */
81    public final Element getElement() {
82        return this.element;
83    }
84 
85    /**
86     * Returns a short description of this throwable.
87     * If this <code>Throwable</code> object was created with a non-null detail
88     * message string, then the result is the concatenation of five strings:
89     * <ul>
90     * <li>The name of the actual class of this object
91     * <li>": " (a colon and a space)
92     * <li>The result of the {@link Throwable#getMessage()} method for this object
93     * <li>"\n" (a newline)
94     * <li>A string representation of the {@link #getElement()} method for this object
95     *     (might be empty).
96     * </ul>
97     *
98     * @return a string representation of this throwable.
99     */
100    public final String toString() {
101        return super.toString() + "\n"
102            + (getElement() != null ? getElement().toString() : "");
103    }
104 
105}

[all classes][org.qedeq.kernel.bo.logic.common]
EMMA 2.1.5320 (stable) (C) Vladimir Roubtsov