aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/moe/ymc/acron/serialization
diff options
context:
space:
mode:
authorTrumeet <yuuta@yuuta.moe>2022-07-13 12:44:49 -0700
committerTrumeet <yuuta@yuuta.moe>2022-07-13 12:44:49 -0700
commit8af5fa7157be6bfec041cbfebb55f4503892f4ab (patch)
tree941aaa9d4c41e44122ae9ca778c5b51026bba587 /src/main/java/moe/ymc/acron/serialization
parente26b8e3093c7ce17b365cfdb179e088054a3738d (diff)
downloadacron-8af5fa7157be6bfec041cbfebb55f4503892f4ab.tar
acron-8af5fa7157be6bfec041cbfebb55f4503892f4ab.tar.gz
acron-8af5fa7157be6bfec041cbfebb55f4503892f4ab.tar.bz2
acron-8af5fa7157be6bfec041cbfebb55f4503892f4ab.zip
Add error codes to distinguish invalid requests and server errors
API:ADDITION Signed-off-by: Trumeet <yuuta@yuuta.moe>
Diffstat (limited to 'src/main/java/moe/ymc/acron/serialization')
-rw-r--r--src/main/java/moe/ymc/acron/serialization/Serializer.java10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/main/java/moe/ymc/acron/serialization/Serializer.java b/src/main/java/moe/ymc/acron/serialization/Serializer.java
index 900d6fc..6d06388 100644
--- a/src/main/java/moe/ymc/acron/serialization/Serializer.java
+++ b/src/main/java/moe/ymc/acron/serialization/Serializer.java
@@ -2,6 +2,7 @@ package moe.ymc.acron.serialization;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
+import com.google.gson.JsonParseException;
import com.google.gson.typeadapters.RuntimeTypeAdapterFactory;
import io.netty.handler.codec.http.websocketx.TextWebSocketFrame;
import moe.ymc.acron.c2s.ReqCmd;
@@ -14,13 +15,13 @@ import org.jetbrains.annotations.NotNull;
public class Serializer {
@NotNull
- public static Request deserialize(@NotNull TextWebSocketFrame frame) {
+ public static Request deserialize(@NotNull TextWebSocketFrame frame)
+ throws JsonParseException, IllegalArgumentException, IllegalStateException {
final String text = frame.text();
final RuntimeTypeAdapterFactory<Request> adapter =
RuntimeTypeAdapterFactory.of(Request.class, "type")
.registerSubtype(ReqSetConfig.class, "set_config")
- .registerSubtype(ReqCmd.class, "cmd")
- ;
+ .registerSubtype(ReqCmd.class, "cmd");
final Gson gson = new GsonBuilder()
.registerTypeAdapter(ReqSetConfig.class, new ReqSetConfig.ReqSetConfigDeserializer())
.registerTypeAdapter(ReqSetConfig.Vec3d.class, new ReqSetConfig.Vec3d.Vec3dDeserializer())
@@ -46,8 +47,7 @@ public class Serializer {
.registerSubtype(EventLagging.class, "lagging")
.registerSubtype(EventCmdDenied.class, "cmd_denied")
.registerSubtype(EventError.class, "error")
- .registerSubtype(EventOk.class, "ok")
- ;
+ .registerSubtype(EventOk.class, "ok");
final Gson gson = new GsonBuilder()
.registerTypeAdapterFactory(adapter)
.create();