1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.mina.http.api;
21
22
23
24
25 public enum HttpStatus {
26
27
28
29
30 SUCCESS_OK(200, "HTTP/1.1 200 OK"),
31
32
33
34 SUCCESS_CREATED(201, "HTTP/1.1 201 Created"),
35
36
37
38 SUCCESS_ACCEPTED(202, "HTTP/1.1 202 Accepted"),
39
40
41
42 SUCCESS_NON_AUTHORATIVE_INFORMATION(203, "HTTP/1.1 203 Non-Authoritative Information"),
43
44
45
46 SUCCESS_NO_CONTENT(204, "HTTP/1.1 204 No Content"),
47
48
49
50 SUCCESS_RESET_CONTENT(205, "HTTP/1.1 205 Reset Content"),
51
52
53
54 SUCCESS_PARTIAL_CONTENT(206, "HTTP/1.1 206 Partial Content"),
55
56
57
58
59 REDIRECTION_MULTIPLE_CHOICES(300, "HTTP/1.1 300 Multiple Choices"),
60
61
62
63 REDIRECTION_MOVED_PERMANENTLY(301, "HTTP/1.1 301 Moved Permanently"),
64
65
66
67 REDIRECTION_FOUND(302, "HTTP/1.1 302 Found"),
68
69
70
71 REDIRECTION_SEE_OTHER(303, "HTTP/1.1 303 See Other"),
72
73
74
75 REDIRECTION_NOT_MODIFIED(304, "HTTP/1.1 304 Not Modified"),
76
77
78
79 REDIRECTION_USE_PROXY(305, "HTTP/1.1 305 Use Proxy"),
80
81
82
83 REDIRECTION_TEMPORARILY_REDIRECT(307, "HTTP/1.1 307 Temporary Redirect"),
84
85
86
87
88 CLIENT_ERROR_BAD_REQUEST(400, "HTTP/1.1 400 Bad Request"),
89
90
91
92 CLIENT_ERROR_UNAUTHORIZED(401, "HTTP/1.1 401 Unauthorized"),
93
94
95
96 CLIENT_ERROR_FORBIDDEN(403, "HTTP/1.1 403 Forbidden"),
97
98
99
100 CLIENT_ERROR_NOT_FOUND(404, "HTTP/1.1 404 Not Found"),
101
102
103
104 CLIENT_ERROR_METHOD_NOT_ALLOWED(405, "HTTP/1.1 405 Method Not Allowed"),
105
106
107
108 CLIENT_ERROR_NOT_ACCEPTABLE(406, "HTTP/1.1 406 Not Acceptable"),
109
110
111
112 CLIENT_ERROR_PROXY_AUTHENTICATION_REQUIRED(407, "HTTP/1.1 407 Proxy Authentication Required"),
113
114
115
116 CLIENT_ERROR_REQUEST_TIMEOUT(408, "HTTP/1.1 408 Request Timeout"),
117
118
119
120 CLIENT_ERROR_CONFLICT(409, "HTTP/1.1 409 Conflict"),
121
122
123
124 CLIENT_ERROR_GONE(410, "HTTP/1.1 410 Gone"),
125
126
127
128 CLIENT_ERROR_LENGTH_REQUIRED(411, "HTTP/1.1 411 Length Required"),
129
130
131
132 CLIENT_ERROR_PRECONDITION_FAILED(412, "HTTP/1.1 412 Precondition Failed"),
133
134
135
136 CLIENT_ERROR_REQUEST_ENTITY_TOO_LARGE(413, "HTTP/1.1 413 Request Entity Too Large"),
137
138
139
140 CLIENT_ERROR_REQUEST_URI_TOO_LONG(414, "HTTP/1.1 414 Request-URI Too Long"),
141
142
143
144 CLIENT_ERROR_UNSUPPORTED_MEDIA_TYPE(415, "HTTP/1.1 415 Unsupported Media Type"),
145
146
147
148 CLIENT_ERROR_REQUESTED_RANGE_NOT_SATISFIABLE(416, "HTTP/1.1 416 Requested Range Not Satisfiable"),
149
150
151
152 CLIENT_ERROR_EXPECTATION_FAILED(417, "HTTP/1.1 417 Expectation Failed"),
153
154
155
156
157 SERVER_ERROR_INTERNAL_SERVER_ERROR(500, "HTTP/1.1 500 Internal Server Error"),
158
159
160
161 SERVER_ERROR_NOT_IMPLEMENTED(501, "HTTP/1.1 501 Not Implemented"),
162
163
164
165 SERVER_ERROR_BAD_GATEWAY(502, "HTTP/1.1 502 Bad Gateway"),
166
167
168
169 SERVER_ERROR_SERVICE_UNAVAILABLE(503, "HTTP/1.1 503 Service Unavailable"),
170
171
172
173 SERVER_ERROR_GATEWAY_TIMEOUT(504, "HTTP/1.1 504 Gateway Timeout"),
174
175
176
177 SERVER_ERROR_HTTP_VERSION_NOT_SUPPORTED(505, "HTTP/1.1 505 HTTP Version Not Supported");
178
179
180 private int code;
181
182
183
184
185 private String line;
186
187
188
189
190
191
192
193 private HttpStatus(int code, String phrase) {
194 this.code = code;
195 line = phrase;
196 }
197
198
199
200
201
202
203 public int code() {
204 return code;
205 }
206
207
208
209
210
211
212 public String line() {
213 return line + "\r\n";
214 }
215 }