Refactory: launching plugin.
[phpeclipse.git] / net.sourceforge.phpeclipse.ui / src / net / sourceforge / phpdt / internal / ui / dialogs / StatusInfo.java
1 package net.sourceforge.phpdt.internal.ui.dialogs;
2
3 //import net.sourceforge.phpeclipse.PHPeclipsePlugin;
4 import net.sourceforge.phpeclipse.ui.WebUI;
5
6 import org.eclipse.core.runtime.IStatus;
7 import org.eclipse.jface.util.Assert;
8
9 /**
10  * A settable IStatus. Can be an error, warning, info or ok. For error, info and
11  * warning states, a message describes the problem.
12  */
13 public class StatusInfo implements IStatus {
14
15         private String fStatusMessage;
16
17         private int fSeverity;
18
19         /**
20          * Creates a status set to OK (no message)
21          */
22         public StatusInfo() {
23                 this(OK, null);
24         }
25
26         /**
27          * Creates a status .
28          * 
29          * @param severity
30          *            The status severity: ERROR, WARNING, INFO and OK.
31          * @param message
32          *            The message of the status. Applies only for ERROR, WARNING and
33          *            INFO.
34          */
35         public StatusInfo(int severity, String message) {
36                 fStatusMessage = message;
37                 fSeverity = severity;
38         }
39
40         /**
41          * Returns if the status' severity is OK.
42          */
43         public boolean isOK() {
44                 return fSeverity == IStatus.OK;
45         }
46
47         /**
48          * Returns if the status' severity is WARNING.
49          */
50         public boolean isWarning() {
51                 return fSeverity == IStatus.WARNING;
52         }
53
54         /**
55          * Returns if the status' severity is INFO.
56          */
57         public boolean isInfo() {
58                 return fSeverity == IStatus.INFO;
59         }
60
61         /**
62          * Returns if the status' severity is ERROR.
63          */
64         public boolean isError() {
65                 return fSeverity == IStatus.ERROR;
66         }
67
68         /**
69          * @see IStatus#getMessage
70          */
71         public String getMessage() {
72                 return fStatusMessage;
73         }
74
75         /**
76          * Sets the status to ERROR.
77          * 
78          * @param The
79          *            error message (can be empty, but not null)
80          */
81         public void setError(String errorMessage) {
82                 Assert.isNotNull(errorMessage);
83                 fStatusMessage = errorMessage;
84                 fSeverity = IStatus.ERROR;
85         }
86
87         /**
88          * Sets the status to WARNING.
89          * 
90          * @param The
91          *            warning message (can be empty, but not null)
92          */
93         public void setWarning(String warningMessage) {
94                 Assert.isNotNull(warningMessage);
95                 fStatusMessage = warningMessage;
96                 fSeverity = IStatus.WARNING;
97         }
98
99         /**
100          * Sets the status to INFO.
101          * 
102          * @param The
103          *            info message (can be empty, but not null)
104          */
105         public void setInfo(String infoMessage) {
106                 Assert.isNotNull(infoMessage);
107                 fStatusMessage = infoMessage;
108                 fSeverity = IStatus.INFO;
109         }
110
111         /**
112          * Sets the status to OK.
113          */
114         public void setOK() {
115                 fStatusMessage = null;
116                 fSeverity = IStatus.OK;
117         }
118
119         /*
120          * @see IStatus#matches(int)
121          */
122         public boolean matches(int severityMask) {
123                 return (fSeverity & severityMask) != 0;
124         }
125
126         /**
127          * Returns always <code>false</code>.
128          * 
129          * @see IStatus#isMultiStatus()
130          */
131         public boolean isMultiStatus() {
132                 return false;
133         }
134
135         /*
136          * @see IStatus#getSeverity()
137          */
138         public int getSeverity() {
139                 return fSeverity;
140         }
141
142         /*
143          * @see IStatus#getPlugin()
144          */
145         public String getPlugin() {
146                 return WebUI.PLUGIN_ID;
147         }
148
149         /**
150          * Returns always <code>null</code>.
151          * 
152          * @see IStatus#getException()
153          */
154         public Throwable getException() {
155                 return null;
156         }
157
158         /**
159          * Returns always the error severity.
160          * 
161          * @see IStatus#getCode()
162          */
163         public int getCode() {
164                 return fSeverity;
165         }
166
167         /**
168          * Returns always <code>null</code>.
169          * 
170          * @see IStatus#getChildren()
171          */
172         public IStatus[] getChildren() {
173                 return new IStatus[0];
174         }
175
176 }