66
77package io.javalin.http
88
9+ import io.javalin.http.HttpStatus.ACCEPTED
10+ import io.javalin.http.HttpStatus.ALREADY_REPORTED
911import io.javalin.http.HttpStatus.BAD_GATEWAY
1012import io.javalin.http.HttpStatus.BAD_REQUEST
1113import io.javalin.http.HttpStatus.CONFLICT
14+ import io.javalin.http.HttpStatus.CONTENT_TOO_LARGE
15+ import io.javalin.http.HttpStatus.CONTINUE
16+ import io.javalin.http.HttpStatus.CREATED
17+ import io.javalin.http.HttpStatus.EARLY_HINTS
18+ import io.javalin.http.HttpStatus.ENHANCE_YOUR_CALM
19+ import io.javalin.http.HttpStatus.EXPECTATION_FAILED
20+ import io.javalin.http.HttpStatus.FAILED_DEPENDENCY
1221import io.javalin.http.HttpStatus.FORBIDDEN
1322import io.javalin.http.HttpStatus.FOUND
1423import io.javalin.http.HttpStatus.GATEWAY_TIMEOUT
1524import io.javalin.http.HttpStatus.GONE
25+ import io.javalin.http.HttpStatus.HTTP_VERSION_NOT_SUPPORTED
26+ import io.javalin.http.HttpStatus.IM_A_TEAPOT
27+ import io.javalin.http.HttpStatus.IM_USED
28+ import io.javalin.http.HttpStatus.INSUFFICIENT_STORAGE
1629import io.javalin.http.HttpStatus.INTERNAL_SERVER_ERROR
30+ import io.javalin.http.HttpStatus.LENGTH_REQUIRED
31+ import io.javalin.http.HttpStatus.LOCKED
32+ import io.javalin.http.HttpStatus.LOOP_DETECTED
1733import io.javalin.http.HttpStatus.METHOD_NOT_ALLOWED
34+ import io.javalin.http.HttpStatus.MISDIRECTED_REQUEST
35+ import io.javalin.http.HttpStatus.MOVED_PERMANENTLY
36+ import io.javalin.http.HttpStatus.MULTIPLE_CHOICES
37+ import io.javalin.http.HttpStatus.MULTI_STATUS
38+ import io.javalin.http.HttpStatus.NETWORK_AUTHENTICATION_REQUIRED
39+ import io.javalin.http.HttpStatus.NON_AUTHORITATIVE_INFORMATION
40+ import io.javalin.http.HttpStatus.NOT_ACCEPTABLE
1841import io.javalin.http.HttpStatus.NOT_FOUND
42+ import io.javalin.http.HttpStatus.NOT_IMPLEMENTED
43+ import io.javalin.http.HttpStatus.NOT_MODIFIED
44+ import io.javalin.http.HttpStatus.NO_CONTENT
45+ import io.javalin.http.HttpStatus.OK
46+ import io.javalin.http.HttpStatus.PARTIAL_CONTENT
47+ import io.javalin.http.HttpStatus.PAYMENT_REQUIRED
48+ import io.javalin.http.HttpStatus.PERMANENT_REDIRECT
49+ import io.javalin.http.HttpStatus.PRECONDITION_FAILED
50+ import io.javalin.http.HttpStatus.PRECONDITION_REQUIRED
51+ import io.javalin.http.HttpStatus.PROCESSING
52+ import io.javalin.http.HttpStatus.PROXY_AUTHENTICATION_REQUIRED
53+ import io.javalin.http.HttpStatus.RANGE_NOT_SATISFIABLE
54+ import io.javalin.http.HttpStatus.REQUEST_HEADER_FIELDS_TOO_LARGE
55+ import io.javalin.http.HttpStatus.REQUEST_TIMEOUT
56+ import io.javalin.http.HttpStatus.RESET_CONTENT
57+ import io.javalin.http.HttpStatus.SEE_OTHER
1958import io.javalin.http.HttpStatus.SERVICE_UNAVAILABLE
59+ import io.javalin.http.HttpStatus.SWITCHING_PROTOCOLS
60+ import io.javalin.http.HttpStatus.TEMPORARY_REDIRECT
61+ import io.javalin.http.HttpStatus.TOO_EARLY
62+ import io.javalin.http.HttpStatus.TOO_MANY_REQUESTS
2063import io.javalin.http.HttpStatus.UNAUTHORIZED
64+ import io.javalin.http.HttpStatus.UNAVAILABLE_FOR_LEGAL_REASONS
65+ import io.javalin.http.HttpStatus.UNPROCESSABLE_CONTENT
66+ import io.javalin.http.HttpStatus.UNSUPPORTED_MEDIA_TYPE
67+ import io.javalin.http.HttpStatus.UPGRADE_REQUIRED
68+ import io.javalin.http.HttpStatus.URI_TOO_LONG
69+ import io.javalin.http.HttpStatus.USE_PROXY
2170
2271open class HttpResponseException @JvmOverloads constructor(
2372 val status : Int ,
@@ -31,12 +80,122 @@ open class HttpResponseException @JvmOverloads constructor(
3180 ) : this (status.code, message, details)
3281}
3382
83+ open class ContinueResponse @JvmOverloads constructor(
84+ message : String = CONTINUE .message,
85+ details : Map <String , String > = mapOf()
86+ ) : HttpResponseException(CONTINUE , message, details)
87+
88+ open class SwitchingProtocolsResponse @JvmOverloads constructor(
89+ message : String = SWITCHING_PROTOCOLS .message,
90+ details : Map <String , String > = mapOf()
91+ ) : HttpResponseException(SWITCHING_PROTOCOLS , message, details)
92+
93+ open class ProcessingResponse @JvmOverloads constructor(
94+ message : String = PROCESSING .message,
95+ details : Map <String , String > = mapOf()
96+ ) : HttpResponseException(PROCESSING , message, details)
97+
98+ open class EarlyHintsResponse @JvmOverloads constructor(
99+ message : String = EARLY_HINTS .message,
100+ details : Map <String , String > = mapOf()
101+ ) : HttpResponseException(EARLY_HINTS , message, details)
102+
103+ open class OkResponse @JvmOverloads constructor(
104+ message : String = OK .message,
105+ details : Map <String , String > = mapOf()
106+ ) : HttpResponseException(OK , message, details)
107+
108+ open class CreatedResponse @JvmOverloads constructor(
109+ message : String = CREATED .message,
110+ details : Map <String , String > = mapOf()
111+ ) : HttpResponseException(CREATED , message, details)
112+
113+ open class AcceptedResponse @JvmOverloads constructor(
114+ message : String = ACCEPTED .message,
115+ details : Map <String , String > = mapOf()
116+ ) : HttpResponseException(ACCEPTED , message, details)
117+
118+ open class NonAuthoritativeInformationResponse @JvmOverloads constructor(
119+ message : String = NON_AUTHORITATIVE_INFORMATION .message,
120+ details : Map <String , String > = mapOf()
121+ ) : HttpResponseException(NON_AUTHORITATIVE_INFORMATION , message, details)
122+
123+ open class NoContentResponse @JvmOverloads constructor(
124+ message : String = NO_CONTENT .message,
125+ details : Map <String , String > = mapOf()
126+ ) : HttpResponseException(NO_CONTENT , message, details)
127+
128+ open class ResetContentResponse @JvmOverloads constructor(
129+ message : String = RESET_CONTENT .message,
130+ details : Map <String , String > = mapOf()
131+ ) : HttpResponseException(RESET_CONTENT , message, details)
132+
133+ open class PartialContentResponse @JvmOverloads constructor(
134+ message : String = PARTIAL_CONTENT .message,
135+ details : Map <String , String > = mapOf()
136+ ) : HttpResponseException(PARTIAL_CONTENT , message, details)
137+
138+ open class MultiStatusResponse @JvmOverloads constructor(
139+ message : String = MULTI_STATUS .message,
140+ details : Map <String , String > = mapOf()
141+ ) : HttpResponseException(MULTI_STATUS , message, details)
142+
143+ open class AlreadyReportedResponse @JvmOverloads constructor(
144+ message : String = ALREADY_REPORTED .message,
145+ details : Map <String , String > = mapOf()
146+ ) : HttpResponseException(ALREADY_REPORTED , message, details)
147+
148+ open class ImUsedResponse @JvmOverloads constructor(
149+ message : String = IM_USED .message,
150+ details : Map <String , String > = mapOf()
151+ ) : HttpResponseException(IM_USED , message, details)
152+
34153open class RedirectResponse @JvmOverloads constructor(
35154 status : HttpStatus = FOUND ,
36155 message : String = status.message,
37156 details : Map <String , String > = mapOf()
38157) : HttpResponseException(status, message, details)
39158
159+ open class MultipleChoicesResponse @JvmOverloads constructor(
160+ message : String = MULTIPLE_CHOICES .message,
161+ details : Map <String , String > = mapOf()
162+ ) : HttpResponseException(MULTIPLE_CHOICES , message, details)
163+
164+ open class MovedPermanentlyResponse @JvmOverloads constructor(
165+ message : String = MOVED_PERMANENTLY .message,
166+ details : Map <String , String > = mapOf()
167+ ) : HttpResponseException(MOVED_PERMANENTLY , message, details)
168+
169+ open class FoundResponse @JvmOverloads constructor(
170+ message : String = FOUND .message,
171+ details : Map <String , String > = mapOf()
172+ ) : HttpResponseException(FOUND , message, details)
173+
174+ open class SeeOtherResponse @JvmOverloads constructor(
175+ message : String = SEE_OTHER .message,
176+ details : Map <String , String > = mapOf()
177+ ) : HttpResponseException(SEE_OTHER , message, details)
178+
179+ open class NotModifiedResponse @JvmOverloads constructor(
180+ message : String = NOT_MODIFIED .message,
181+ details : Map <String , String > = mapOf()
182+ ) : HttpResponseException(NOT_MODIFIED , message, details)
183+
184+ open class UseProxyResponse @JvmOverloads constructor(
185+ message : String = USE_PROXY .message,
186+ details : Map <String , String > = mapOf()
187+ ) : HttpResponseException(USE_PROXY , message, details)
188+
189+ open class TemporaryRedirectResponse @JvmOverloads constructor(
190+ message : String = TEMPORARY_REDIRECT .message,
191+ details : Map <String , String > = mapOf()
192+ ) : HttpResponseException(TEMPORARY_REDIRECT , message, details)
193+
194+ open class PermanentRedirectResponse @JvmOverloads constructor(
195+ message : String = PERMANENT_REDIRECT .message,
196+ details : Map <String , String > = mapOf()
197+ ) : HttpResponseException(PERMANENT_REDIRECT , message, details)
198+
40199open class BadRequestResponse @JvmOverloads constructor(
41200 message : String = BAD_REQUEST .message,
42201 details : Map <String , String > = mapOf()
@@ -47,6 +206,11 @@ open class UnauthorizedResponse @JvmOverloads constructor(
47206 details : Map <String , String > = mapOf()
48207) : HttpResponseException(UNAUTHORIZED , message, details)
49208
209+ open class PaymentRequiredResponse @JvmOverloads constructor(
210+ message : String = PAYMENT_REQUIRED .message,
211+ details : Map <String , String > = mapOf()
212+ ) : HttpResponseException(PAYMENT_REQUIRED , message, details)
213+
50214open class ForbiddenResponse @JvmOverloads constructor(
51215 message : String = FORBIDDEN .message,
52216 details : Map <String , String > = mapOf()
@@ -62,6 +226,21 @@ open class MethodNotAllowedResponse @JvmOverloads constructor(
62226 details : Map <String , String > = mapOf()
63227) : HttpResponseException(METHOD_NOT_ALLOWED , message, details)
64228
229+ open class NotAcceptableResponse @JvmOverloads constructor(
230+ message : String = NOT_ACCEPTABLE .message,
231+ details : Map <String , String > = mapOf()
232+ ) : HttpResponseException(NOT_ACCEPTABLE , message, details)
233+
234+ open class ProxyAuthenticationRequiredResponse @JvmOverloads constructor(
235+ message : String = PROXY_AUTHENTICATION_REQUIRED .message,
236+ details : Map <String , String > = mapOf()
237+ ) : HttpResponseException(PROXY_AUTHENTICATION_REQUIRED , message, details)
238+
239+ open class RequestTimeoutResponse @JvmOverloads constructor(
240+ message : String = REQUEST_TIMEOUT .message,
241+ details : Map <String , String > = mapOf()
242+ ) : HttpResponseException(REQUEST_TIMEOUT , message, details)
243+
65244open class ConflictResponse @JvmOverloads constructor(
66245 message : String = CONFLICT .message,
67246 details : Map <String , String > = mapOf()
@@ -72,11 +251,111 @@ open class GoneResponse @JvmOverloads constructor(
72251 details : Map <String , String > = mapOf()
73252) : HttpResponseException(GONE , message, details)
74253
254+ open class LengthRequiredResponse @JvmOverloads constructor(
255+ message : String = LENGTH_REQUIRED .message,
256+ details : Map <String , String > = mapOf()
257+ ) : HttpResponseException(LENGTH_REQUIRED , message, details)
258+
259+ open class PreconditionFailedResponse @JvmOverloads constructor(
260+ message : String = PRECONDITION_FAILED .message,
261+ details : Map <String , String > = mapOf()
262+ ) : HttpResponseException(PRECONDITION_FAILED , message, details)
263+
264+ open class ContentTooLargeResponse @JvmOverloads constructor(
265+ message : String = CONTENT_TOO_LARGE .message,
266+ details : Map <String , String > = mapOf()
267+ ) : HttpResponseException(CONTENT_TOO_LARGE , message, details)
268+
269+ open class UriTooLongResponse @JvmOverloads constructor(
270+ message : String = URI_TOO_LONG .message,
271+ details : Map <String , String > = mapOf()
272+ ) : HttpResponseException(URI_TOO_LONG , message, details)
273+
274+ open class UnsupportedMediaTypeResponse @JvmOverloads constructor(
275+ message : String = UNSUPPORTED_MEDIA_TYPE .message,
276+ details : Map <String , String > = mapOf()
277+ ) : HttpResponseException(UNSUPPORTED_MEDIA_TYPE , message, details)
278+
279+ open class RangeNotSatisfiableResponse @JvmOverloads constructor(
280+ message : String = RANGE_NOT_SATISFIABLE .message,
281+ details : Map <String , String > = mapOf()
282+ ) : HttpResponseException(RANGE_NOT_SATISFIABLE , message, details)
283+
284+ open class ExpectationFailedResponse @JvmOverloads constructor(
285+ message : String = EXPECTATION_FAILED .message,
286+ details : Map <String , String > = mapOf()
287+ ) : HttpResponseException(EXPECTATION_FAILED , message, details)
288+
289+ open class ImATeapotResponse @JvmOverloads constructor(
290+ message : String = IM_A_TEAPOT .message,
291+ details : Map <String , String > = mapOf()
292+ ) : HttpResponseException(IM_A_TEAPOT , message, details)
293+
294+ open class EnhanceYourCalmResponse @JvmOverloads constructor(
295+ message : String = ENHANCE_YOUR_CALM .message,
296+ details : Map <String , String > = mapOf()
297+ ) : HttpResponseException(ENHANCE_YOUR_CALM , message, details)
298+
299+ open class MisdirectedRequestResponse @JvmOverloads constructor(
300+ message : String = MISDIRECTED_REQUEST .message,
301+ details : Map <String , String > = mapOf()
302+ ) : HttpResponseException(MISDIRECTED_REQUEST , message, details)
303+
304+ open class UnprocessableContentResponse @JvmOverloads constructor(
305+ message : String = UNPROCESSABLE_CONTENT .message,
306+ details : Map <String , String > = mapOf()
307+ ) : HttpResponseException(UNPROCESSABLE_CONTENT , message, details)
308+
309+ open class LockedResponse @JvmOverloads constructor(
310+ message : String = LOCKED .message,
311+ details : Map <String , String > = mapOf()
312+ ) : HttpResponseException(LOCKED , message, details)
313+
314+ open class FailedDependencyResponse @JvmOverloads constructor(
315+ message : String = FAILED_DEPENDENCY .message,
316+ details : Map <String , String > = mapOf()
317+ ) : HttpResponseException(FAILED_DEPENDENCY , message, details)
318+
319+ open class TooEarlyResponse @JvmOverloads constructor(
320+ message : String = TOO_EARLY .message,
321+ details : Map <String , String > = mapOf()
322+ ) : HttpResponseException(TOO_EARLY , message, details)
323+
324+ open class UpgradeRequiredResponse @JvmOverloads constructor(
325+ message : String = UPGRADE_REQUIRED .message,
326+ details : Map <String , String > = mapOf()
327+ ) : HttpResponseException(UPGRADE_REQUIRED , message, details)
328+
329+ open class PreconditionRequiredResponse @JvmOverloads constructor(
330+ message : String = PRECONDITION_REQUIRED .message,
331+ details : Map <String , String > = mapOf()
332+ ) : HttpResponseException(PRECONDITION_REQUIRED , message, details)
333+
334+ open class TooManyRequestsResponse @JvmOverloads constructor(
335+ message : String = TOO_MANY_REQUESTS .message,
336+ details : Map <String , String > = mapOf()
337+ ) : HttpResponseException(TOO_MANY_REQUESTS , message, details)
338+
339+ open class RequestHeaderFieldsTooLargeResponse @JvmOverloads constructor(
340+ message : String = REQUEST_HEADER_FIELDS_TOO_LARGE .message,
341+ details : Map <String , String > = mapOf()
342+ ) : HttpResponseException(REQUEST_HEADER_FIELDS_TOO_LARGE , message, details)
343+
344+ open class UnavailableForLegalReasonsResponse @JvmOverloads constructor(
345+ message : String = UNAVAILABLE_FOR_LEGAL_REASONS .message,
346+ details : Map <String , String > = mapOf()
347+ ) : HttpResponseException(UNAVAILABLE_FOR_LEGAL_REASONS , message, details)
348+
75349open class InternalServerErrorResponse @JvmOverloads constructor(
76350 message : String = INTERNAL_SERVER_ERROR .message,
77351 details : Map <String , String > = mapOf()
78352) : HttpResponseException(INTERNAL_SERVER_ERROR , message, details)
79353
354+ open class NotImplementedResponse @JvmOverloads constructor(
355+ message : String = NOT_IMPLEMENTED .message,
356+ details : Map <String , String > = mapOf()
357+ ) : HttpResponseException(NOT_IMPLEMENTED , message, details)
358+
80359open class BadGatewayResponse @JvmOverloads constructor(
81360 message : String = BAD_GATEWAY .message,
82361 details : Map <String , String > = mapOf()
@@ -91,3 +370,23 @@ open class GatewayTimeoutResponse @JvmOverloads constructor(
91370 message : String = GATEWAY_TIMEOUT .message,
92371 details : Map <String , String > = mapOf()
93372) : HttpResponseException(GATEWAY_TIMEOUT , message, details)
373+
374+ open class HttpVersionNotSupportedResponse @JvmOverloads constructor(
375+ message : String = HTTP_VERSION_NOT_SUPPORTED .message,
376+ details : Map <String , String > = mapOf()
377+ ) : HttpResponseException(HTTP_VERSION_NOT_SUPPORTED , message, details)
378+
379+ open class InsufficientStorageResponse @JvmOverloads constructor(
380+ message : String = INSUFFICIENT_STORAGE .message,
381+ details : Map <String , String > = mapOf()
382+ ) : HttpResponseException(INSUFFICIENT_STORAGE , message, details)
383+
384+ open class LoopDetectedResponse @JvmOverloads constructor(
385+ message : String = LOOP_DETECTED .message,
386+ details : Map <String , String > = mapOf()
387+ ) : HttpResponseException(LOOP_DETECTED , message, details)
388+
389+ open class NetworkAuthenticationRequiredResponse @JvmOverloads constructor(
390+ message : String = NETWORK_AUTHENTICATION_REQUIRED .message,
391+ details : Map <String , String > = mapOf()
392+ ) : HttpResponseException(NETWORK_AUTHENTICATION_REQUIRED , message, details)
0 commit comments