From 15bc1e0ea0f6d593a9407a601b80920e5760ff52 Mon Sep 17 00:00:00 2001 From: michalwisniewski3101 Date: Wed, 17 May 2023 14:55:24 +0200 Subject: [PATCH] Include message type and message id in WebSocket onError response Fixes #48 --- .../websocket/utils/CustomException.java | 121 +++++++++++++++++- 1 file changed, 120 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/github/splendor_mobile_game/websocket/utils/CustomException.java b/src/main/java/com/github/splendor_mobile_game/websocket/utils/CustomException.java index a6722438..91d56317 100644 --- a/src/main/java/com/github/splendor_mobile_game/websocket/utils/CustomException.java +++ b/src/main/java/com/github/splendor_mobile_game/websocket/utils/CustomException.java @@ -2,6 +2,8 @@ import com.github.splendor_mobile_game.websocket.response.ErrorResponse; import com.github.splendor_mobile_game.websocket.response.Result; +import com.github.splendor_mobile_game.websocket.handlers.ServerMessageType; +import java.util.UUID; /** * Custom exception class that extends RuntimeException. @@ -11,6 +13,8 @@ public class CustomException extends RuntimeException { private Result result = Result.FAILURE; + private UUID contextId; + private ServerMessageType type; public CustomException() { } @@ -42,6 +46,121 @@ public CustomException(String message, Throwable cause, Result result) { this.result = result; } + public CustomException(UUID contextId) { + this.contextId=contextId; + } + + public CustomException(ServerMessageType type) { + this.type=type; + } + + public CustomException(String message, ServerMessageType type) { + super(message); + this.type=type; + } + + public CustomException(String message, Result result, ServerMessageType type) { + super(message); + this.result = result; + this.type=type; + } + + public CustomException(Throwable cause, ServerMessageType type) { + super(cause); + this.type=type; + } + + public CustomException(Throwable cause, Result result, ServerMessageType type) { + super(cause); + this.result = result; + this.type=type; + } + + public CustomException(String message, Throwable cause, ServerMessageType type) { + super(message, cause); + this.type=type; + } + + public CustomException(String message, Throwable cause, Result result, ServerMessageType type) { + super(message, cause); + this.result = result; + this.type=type; + } + + public CustomException(String message, UUID contextId) { + super(message); + this.contextId=contextId; + } + + public CustomException(String message, Result result, UUID contextId) { + super(message); + this.result = result; + this.contextId=contextId; + } + + public CustomException(Throwable cause, UUID contextId) { + super(cause); + this.contextId=contextId; + } + + public CustomException(Throwable cause, Result result, UUID contextId) { + super(cause); + this.result = result; + this.contextId=contextId; + } + + public CustomException(String message, Throwable cause, UUID contextId) { + super(message, cause); + this.contextId=contextId; + } + + public CustomException(String message, Throwable cause, Result result, UUID contextId) { + super(message, cause); + this.result = result; + this.contextId=contextId; + } + + public CustomException(String message, UUID contextId, ServerMessageType type) { + super(message); + this.contextId=contextId; + this.type=type; + } + + public CustomException(String message, Result result, UUID contextId, ServerMessageType type) { + super(message); + this.result = result; + this.contextId=contextId; + this.type=type; + } + + public CustomException(Throwable cause, UUID contextId, ServerMessageType type) { + super(cause); + this.contextId=contextId; + this.type=type; + } + + public CustomException(Throwable cause, Result result, UUID contextId, ServerMessageType type) { + super(cause); + this.result = result; + this.contextId=contextId; + this.type=type; + } + + public CustomException(String message, Throwable cause, UUID contextId, ServerMessageType type) { + super(message, cause); + this.contextId=contextId; + this.type=type; + } + + public CustomException(String message, Throwable cause, Result result, UUID contextId, ServerMessageType type) { + super(message, cause); + this.result = result; + + } + + + + @Override public String toString() { return this.getMessage(); @@ -53,7 +172,7 @@ public String toString() { * @return a JSON string representation of an error response object */ public String toJsonResponse() { - return (new ErrorResponse(this.result, this.toString())).ToJson(); + return (new ErrorResponse(this.result, this.toString(),this.type,this.contextId.toString())).ToJson(); } }