ConnectX 3.0
ConnectX Game Suite
Loading...
Searching...
No Matches
MessageSerializer Class Reference

#include <serializer.hpp>

Static Public Member Functions

static std::string serialize (const ConnectRequest &msg)
 
static std::string serialize (const ConnectResponse &msg)
 
static std::string serialize (const DisconnectMessage &msg)
 
static std::string serialize (const HeartbeatMessage &msg)
 
static std::string serialize (const MakeMoveRequest &msg)
 
static std::string serialize (const MoveResult &msg)
 
static std::string serialize (const GameStateUpdate &msg)
 
static std::string serialize (const GameOverMessage &msg)
 
static std::string serialize (const CreateGameRequest &msg)
 
static std::string serialize (const CreateGameResponse &msg)
 
static std::string serialize (const JoinGameRequest &msg)
 
static std::string serialize (const JoinGameResponse &msg)
 
static std::string serialize (const ListGamesRequest &msg)
 
static std::string serialize (const ListGamesResponse &msg)
 
static std::string serialize (const ErrorMessage &msg)
 
static ConnectRequest deserializeConnectRequest (const std::string &json)
 
static ConnectResponse deserializeConnectResponse (const std::string &json)
 
static DisconnectMessage deserializeDisconnect (const std::string &json)
 
static HeartbeatMessage deserializeHeartbeat (const std::string &json)
 
static MakeMoveRequest deserializeMakeMoveRequest (const std::string &json)
 
static MoveResult deserializeMoveResult (const std::string &json)
 
static GameStateUpdate deserializeGameStateUpdate (const std::string &json)
 
static GameOverMessage deserializeGameOver (const std::string &json)
 
static CreateGameRequest deserializeCreateGameRequest (const std::string &json)
 
static CreateGameResponse deserializeCreateGameResponse (const std::string &json)
 
static JoinGameRequest deserializeJoinGameRequest (const std::string &json)
 
static JoinGameResponse deserializeJoinGameResponse (const std::string &json)
 
static ListGamesRequest deserializeListGamesRequest (const std::string &json)
 
static ListGamesResponse deserializeGameListResponse (const std::string &json)
 
static ErrorMessage deserializeError (const std::string &json)
 
static std::string wrapMessage (MessageType type, const std::string &payload)
 
static std::pair< MessageType, std::string > unwrapMessage (const std::string &json)
 
static bool isValidJson (const std::string &json)
 
static bool isValidMessageSize (const std::string &json)
 

Detailed Description

Handles serialization and deserialization of protocol messages Uses JSON format for human readability and ease of debugging

Member Function Documentation

◆ deserializeConnectRequest()

ConnectRequest MessageSerializer::deserializeConnectRequest ( const std::string &  json)
static

◆ deserializeConnectResponse()

ConnectResponse MessageSerializer::deserializeConnectResponse ( const std::string &  json)
static

◆ deserializeCreateGameRequest()

CreateGameRequest MessageSerializer::deserializeCreateGameRequest ( const std::string &  json)
static

◆ deserializeCreateGameResponse()

CreateGameResponse MessageSerializer::deserializeCreateGameResponse ( const std::string &  json)
static

◆ deserializeDisconnect()

DisconnectMessage MessageSerializer::deserializeDisconnect ( const std::string &  json)
static

◆ deserializeError()

ErrorMessage MessageSerializer::deserializeError ( const std::string &  json)
static

◆ deserializeGameListResponse()

ListGamesResponse MessageSerializer::deserializeGameListResponse ( const std::string &  json)
static

◆ deserializeGameOver()

GameOverMessage MessageSerializer::deserializeGameOver ( const std::string &  json)
static

◆ deserializeGameStateUpdate()

GameStateUpdate MessageSerializer::deserializeGameStateUpdate ( const std::string &  json)
static

◆ deserializeHeartbeat()

HeartbeatMessage MessageSerializer::deserializeHeartbeat ( const std::string &  json)
static

◆ deserializeJoinGameRequest()

JoinGameRequest MessageSerializer::deserializeJoinGameRequest ( const std::string &  json)
static

◆ deserializeJoinGameResponse()

JoinGameResponse MessageSerializer::deserializeJoinGameResponse ( const std::string &  json)
static

◆ deserializeListGamesRequest()

ListGamesRequest MessageSerializer::deserializeListGamesRequest ( const std::string &  json)
static

◆ deserializeMakeMoveRequest()

MakeMoveRequest MessageSerializer::deserializeMakeMoveRequest ( const std::string &  json)
static

◆ deserializeMoveResult()

MoveResult MessageSerializer::deserializeMoveResult ( const std::string &  json)
static

◆ isValidJson()

bool MessageSerializer::isValidJson ( const std::string &  json)
static

Check if a JSON string is valid

◆ isValidMessageSize()

bool MessageSerializer::isValidMessageSize ( const std::string &  json)
static

Validate message size

◆ serialize() [1/15]

std::string MessageSerializer::serialize ( const ConnectRequest msg)
static

◆ serialize() [2/15]

std::string MessageSerializer::serialize ( const ConnectResponse msg)
static

◆ serialize() [3/15]

std::string MessageSerializer::serialize ( const CreateGameRequest msg)
static

◆ serialize() [4/15]

std::string MessageSerializer::serialize ( const CreateGameResponse msg)
static

◆ serialize() [5/15]

std::string MessageSerializer::serialize ( const DisconnectMessage msg)
static

◆ serialize() [6/15]

std::string MessageSerializer::serialize ( const ErrorMessage msg)
static

◆ serialize() [7/15]

std::string MessageSerializer::serialize ( const GameOverMessage msg)
static

◆ serialize() [8/15]

std::string MessageSerializer::serialize ( const GameStateUpdate msg)
static

◆ serialize() [9/15]

std::string MessageSerializer::serialize ( const HeartbeatMessage msg)
static

◆ serialize() [10/15]

std::string MessageSerializer::serialize ( const JoinGameRequest msg)
static

◆ serialize() [11/15]

std::string MessageSerializer::serialize ( const JoinGameResponse msg)
static

◆ serialize() [12/15]

std::string MessageSerializer::serialize ( const ListGamesRequest msg)
static

◆ serialize() [13/15]

std::string MessageSerializer::serialize ( const ListGamesResponse msg)
static

◆ serialize() [14/15]

std::string MessageSerializer::serialize ( const MakeMoveRequest msg)
static

◆ serialize() [15/15]

std::string MessageSerializer::serialize ( const MoveResult msg)
static

◆ unwrapMessage()

std::pair< MessageType, std::string > MessageSerializer::unwrapMessage ( const std::string &  json)
static

Unwraps a type-tagged message Returns: {type, payload_json}

◆ wrapMessage()

std::string MessageSerializer::wrapMessage ( MessageType  type,
const std::string &  payload 
)
static

Converts a <MessageType> into a <message_json> object.


The documentation for this class was generated from the following files: