summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2022-10-06 22:43:31 +0200
committerFabian Mastenbroek <mail.fabianm@gmail.com>2022-10-07 14:07:26 +0200
commit5c05d729b83dfc367bf19e8559569030f6e400b3 (patch)
tree7c9bd79f2da1b7279b02d556472b334fdc4fb762
parent7ba3b953300c46b4e3afcde17cd3dd14b1af8406 (diff)
fix(web/server): Limit exception mapper to WebApplicationException
This change updates the Quarkus-based web server to limit the default exception mapper to just WebApplicationException. Other exceptions should be considered internal server errors and must not be shared with users.
-rw-r--r--opendc-web/opendc-web-server/src/main/kotlin/org/opendc/web/server/rest/error/WebApplicationExceptionMapper.kt (renamed from opendc-web/opendc-web-server/src/main/kotlin/org/opendc/web/server/rest/error/GenericExceptionMapper.kt)8
1 files changed, 4 insertions, 4 deletions
diff --git a/opendc-web/opendc-web-server/src/main/kotlin/org/opendc/web/server/rest/error/GenericExceptionMapper.kt b/opendc-web/opendc-web-server/src/main/kotlin/org/opendc/web/server/rest/error/WebApplicationExceptionMapper.kt
index d8df72e0..aa046abf 100644
--- a/opendc-web/opendc-web-server/src/main/kotlin/org/opendc/web/server/rest/error/GenericExceptionMapper.kt
+++ b/opendc-web/opendc-web-server/src/main/kotlin/org/opendc/web/server/rest/error/WebApplicationExceptionMapper.kt
@@ -30,12 +30,12 @@ import javax.ws.rs.ext.ExceptionMapper
import javax.ws.rs.ext.Provider
/**
- * Helper class to transform an exception into an JSON error response.
+ * Helper class to transform a [WebApplicationException] into an JSON error response.
*/
@Provider
-class GenericExceptionMapper : ExceptionMapper<Exception> {
- override fun toResponse(exception: Exception): Response {
- val code = if (exception is WebApplicationException) exception.response.status else 500
+class WebApplicationExceptionMapper : ExceptionMapper<WebApplicationException> {
+ override fun toResponse(exception: WebApplicationException): Response {
+ val code = exception.response.status
return Response.status(code)
.entity(ProtocolError(code, exception.message ?: "Unknown error"))