Tried to implement some Utility::Bitconverter methods but it didnt worked

InternalTags cant be higher than 255 because they will be converted to byte
added new ToString method in Utility::StringConverter
Server now closes the connection better
This commit is contained in:
xX-TheDoctor-Xx
2016-08-12 10:46:36 +01:00
parent bcf8ea1919
commit e3de0a1489
24 changed files with 35 additions and 32 deletions

View File

@ -75,8 +75,8 @@ void TcpClient::Shutdown()
{
NetworkMessage message;
message.sender = id;
message.distribution_mode = Server;
message.tag = DISCONNECT;
message.distribution_mode = static_cast<byte>(Server);
message.tag = static_cast<byte>(DISCONNECT);
SendMessage(message);
uint16 code = closesocket(tcp_socket);
if (code == SOCKET_ERROR)

View File

@ -73,9 +73,8 @@ void TcpServer::Shutdown()
{
for (std::vector<TcpClient>::iterator it = clients.begin(); it != clients.end(); ++it)
{
TcpClient client = *it;
client.Shutdown();
clients.erase(std::find(clients.begin(), clients.end(), client));
(*it).Shutdown();
clients.erase(it);
}
}
@ -113,7 +112,7 @@ void TcpServer::accept_connections(TcpServer *server)
std::cerr << WSAGetLastError() << std::endl;
closesocket(server->server_tcp_socket);
WSACleanup();
server->running = false;
server->running = false; // if we cant accept a connection idk if we should stop the server or not mh
break;
}

View File

@ -98,65 +98,70 @@ int64 Utility::BitConverter::ToInt64(const std::vector<byte> & bytes, uint16 sta
const std::string & Utility::StringConverter::ToString(bool value)
{
// TODO: insert return statement here
return std::string();
}
const std::string & Utility::StringConverter::ToString(uint8 value)
{
// TODO: insert return statement here
return std::string();
}
const std::string & Utility::StringConverter::ToString(uint16 value)
{
// TODO: insert return statement here
return std::string();
}
const std::string & Utility::StringConverter::ToString(uint32 value)
{
// TODO: insert return statement here
return std::string();
}
const std::string & Utility::StringConverter::ToString(uint64 value)
{
// TODO: insert return statement here
return std::string();
}
const std::string & Utility::StringConverter::ToString(int8 value)
{
// TODO: insert return statement here
return std::string();
}
const std::string & Utility::StringConverter::ToString(int16 value)
{
// TODO: insert return statement here
return std::string();
}
const std::string & Utility::StringConverter::ToString(int32 value)
{
// TODO: insert return statement here
return std::string();
}
const std::string & Utility::StringConverter::ToString(int64 value)
{
// TODO: insert return statement here
return std::string();
}
const std::string & Utility::StringConverter::ToString(const std::vector<byte>& bytes)
{
return std::string();
}
const std::string & Utility::StringConverter::ToString(const std::vector<byte> & bytes, uint16 start_index, uint16 lenght)
{
// TODO: insert return statement here
return std::string();
}
const void Utility::ConfigReader::ReadConfig(const std::string & file_name)
void Utility::ConfigReader::ReadConfig(const std::string & file_name)
{
return void();
}
const std::map<std::string, std::string>& Utility::ConfigReader::ReadNodes()
{
// TODO: insert return statement here
return std::map<std::string, std::string>();
}
const std::string & Utility::ConfigReader::operator[](uint16 index)
{
// TODO: insert return statement here
return std::string();
}