FormallyProvedState.java
01 /* This file is part of the project "Hilbert II" - http://www.qedeq.org
02  *
03  * Copyright 2000-2013,  Michael Meyling <mime@qedeq.org>.
04  *
05  * "Hilbert II" is free software; you can redistribute
06  * it and/or modify it under the terms of the GNU General Public
07  * License as published by the Free Software Foundation; either
08  * version 2 of the License, or (at your option) any later version.
09  *
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.se.state;
17 
18 import org.qedeq.kernel.se.common.State;
19 
20 
21 /**
22  * Represents a mathematical module state. Every instance of this class should be unique.
23  *
24  @author  Michael Meyling
25  */
26 public final class FormallyProvedState extends AbstractState implements State {
27 
28     /** Unchecked. */
29     public static final FormallyProvedState STATE_UNCHECKED
30         new FormallyProvedState(WellFormedStateDescriptions.STATE_STRING_UNCHECKED,
31             false, FormallyProvedStateDescriptions.STATE_CODE_UNCHECKED);
32 
33     /** External checking. */
34     public static final FormallyProvedState STATE_EXTERNAL_CHECKING
35         new FormallyProvedState(WellFormedStateDescriptions.STATE_STRING_EXTERNAL_CHECKING,
36             false, FormallyProvedStateDescriptions.STATE_CODE_EXTERNAL_CHECKING);
37 
38     /** External checking failed. */
39     public static final FormallyProvedState STATE_EXTERNAL_CHECKING_FAILED
40         =  new FormallyProvedState(
41             FormallyProvedStateDescriptions.STATE_STRING_EXTERNAL_CHECKING_FAILED,
42             true, FormallyProvedStateDescriptions.STATE_CODE_EXTERNAL_CHECKING_FAILED);
43 
44     /** Internal checking phase. */
45     public static final FormallyProvedState STATE_INTERNAL_CHECKING
46         new FormallyProvedState(FormallyProvedStateDescriptions.STATE_STRING_INTERNAL_CHECKING,
47             false, FormallyProvedStateDescriptions.STATE_CODE_INTERNAL_CHECKING);
48 
49     /** Internal check failed. */
50     public static final FormallyProvedState STATE_INTERNAL_CHECKING_FAILED
51         =  new FormallyProvedState(
52             FormallyProvedStateDescriptions.STATE_STRING_INTERNAL_CHECKING_FAILED,
53             true, FormallyProvedStateDescriptions.STATE_CODE_INTERNAL_CHECKING_FAILED);
54 
55 
56     /** Successfully completely checked. */
57     public static final FormallyProvedState STATE_CHECKED
58         new FormallyProvedState(FormallyProvedStateDescriptions.STATE_STRING_COMPLETELY_CHECKED,
59             false, FormallyProvedStateDescriptions.STATE_CODE_COMPLETELY_CHECKED);
60 
61     /**
62      * Creates new module state.
63      *
64      @param   text    meaning of this state, <code>null</code> is not permitted.
65      @param   failure is this a failure state?
66      @param   code    code of this state.
67      @throws  IllegalArgumentException    text == <code>null</code>
68      */
69     private FormallyProvedState(final String text, final boolean failure, final int code) {
70         super(text, failure, code);
71     }
72 
73 }