NetworkBuffer now has a fixed header value of 8
Implemented NetworkMessage EncodeMessage
This commit is contained in:
@ -25,7 +25,24 @@ NetworkMessage::~NetworkMessage()
|
||||
|
||||
const NetworkBuffer &NetworkMessage::EncodeMessage(const NetworkMessage &message)
|
||||
{
|
||||
return NetworkBuffer();
|
||||
NetworkBuffer net_buffer;
|
||||
|
||||
std::vector<byte> sender = Utility::BitConverter::FromUint16(message.sender);
|
||||
std::vector<byte> distribution_mode = Utility::BitConverter::FromUint8(message.distribution_mode);
|
||||
std::vector<byte> destination_id = Utility::BitConverter::FromUint16(message.destination_id);
|
||||
std::vector<byte> tag = Utility::BitConverter::FromUint8(message.tag);
|
||||
std::vector<byte> subject = Utility::BitConverter::FromUint16(message.subject);
|
||||
std::vector<byte> data;
|
||||
if (message.data != nullptr)
|
||||
data = Serializer::to_bytes(message.data);
|
||||
|
||||
net_buffer.body.insert(net_buffer.body.end(), sender.begin(), sender.end());
|
||||
net_buffer.body.insert(net_buffer.body.end(), distribution_mode.begin(), distribution_mode.end());
|
||||
net_buffer.body.insert(net_buffer.body.end(), destination_id.begin(), destination_id.end());
|
||||
net_buffer.body.insert(net_buffer.body.end(), tag.begin(), tag.end());
|
||||
net_buffer.body.insert(net_buffer.body.end(), subject.begin(), subject.end());
|
||||
if (message.data != nullptr && data.size() > 0)
|
||||
net_buffer.body.insert(net_buffer.body.end(), data.begin(), data.end());
|
||||
}
|
||||
|
||||
const NetworkMessage &NetworkMessage::DecodeMessage(const NetworkBuffer &buffer)
|
||||
|
||||
Reference in New Issue
Block a user