1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.millscript.commons.alert.alerts;
22
23 import org.millscript.commons.alert.Alert;
24 import org.millscript.commons.alert.Phase;
25
26 /**
27 * This class represents an internal fault alert and is used in combination
28 * with a normal exception to indicate a abnormal internal condition in the
29 * system.
30 */
31 public class Fault extends Alert {
32
33 /**
34 * This is the ID from the first release for future compatibility.
35 */
36 private static final long serialVersionUID = 3257282526501679664L;
37
38 /**
39 * Constructs a new fault alert with no explanation.
40 */
41 public Fault() {
42 this( null );
43 }
44
45 /**
46 * Constructs a new fault alert with the specified explanation.
47 *
48 * @param exp the explanation for the alert
49 */
50 public Fault( final String exp ) {
51 this( "An unexpected internal fault has occured", exp );
52 }
53
54 /**
55 * Constructs a new alert with the specified complaint and explanation.
56 * This constructor is for private use, to allow us to provide an exception
57 * hierarchy.
58 *
59 * @param comp the complaint
60 * @param exp the complaints explanation
61 */
62 protected Fault( final String comp, final String exp ) {
63 super( comp, exp );
64 this.setPhase( Phase.INTERNAL );
65 }
66
67 }