| 8 | } |
| 9 | |
| 10 | void ProtocolParser::Parse(std::string_view msg) { |
| 11 | auto jsonMessage = nlohmann::json::parse(msg); |
| 12 | if (jsonMessage["id"].is_number()) { |
| 13 | _id = jsonMessage["id"].get<int>(); |
| 14 | } else if (jsonMessage["id"].is_string()) { |
| 15 | _id = jsonMessage["id"].get<std::string>(); |
| 16 | } |
| 17 | |
| 18 | if (jsonMessage["method"].is_string()) { |
| 19 | _method = jsonMessage["method"].get<std::string>(); |
| 20 | } |
| 21 | if (jsonMessage["params"].is_object()) { |
| 22 | _params = jsonMessage["params"]; |
| 23 | } |
| 24 | } |
| 25 | |
| 26 | nlohmann::json ProtocolParser::GetParams() { |
| 27 | return _params; |