From cde21038cbc62c255704b9de89c40029f1b748a6 Mon Sep 17 00:00:00 2001 From: Joscha Date: Sat, 8 Feb 2020 15:12:42 +0000 Subject: [PATCH] Add initial node to server hello packet --- src/Forest/Api.hs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Forest/Api.hs b/src/Forest/Api.hs index 4f01aab..931d07f 100644 --- a/src/Forest/Api.hs +++ b/src/Forest/Api.hs @@ -101,22 +101,22 @@ instance FromJSON ClientPacket where {- Server -} data ServerPacket - = ServerHello ![T.Text] + = ServerHello ![T.Text] !Node | ServerUpdate !Path !Node deriving (Show) instance ToJSON ServerPacket where - toJSON (ServerHello extensions) = - object ["type" .= ("hello" :: T.Text), "extensions" .= extensions] + toJSON (ServerHello extensions node) = + object ["type" .= ("hello" :: T.Text), "extensions" .= extensions, "node" .= node] toJSON (ServerUpdate path node) = object ["type" .= ("update" :: T.Text), "path" .= path, "node" .= node] - toEncoding (ServerHello extensions) = - pairs ("type" .= ("hello" :: T.Text) <> "extensions" .= extensions) + toEncoding (ServerHello extensions node) = + pairs ("type" .= ("hello" :: T.Text) <> "extensions" .= extensions <> "node" .= node) toEncoding (ServerUpdate path node) = pairs ("type" .= ("update" :: T.Text) <> "path" .= path <> "node" .= node) instance FromJSON ServerPacket where parseJSON v = - parsePacket v "hello" (\o -> ServerHello <$> o .: "extensions") <|> + parsePacket v "hello" (\o -> ServerHello <$> o .: "extensions" <*> o .: "node") <|> parsePacket v "update" (\o -> ServerUpdate <$> o .: "path" <*> o .: "node")