From 4764b5f494fd5c0fe41dbc01779738c450198933 Mon Sep 17 00:00:00 2001 From: littleblack111 Date: Tue, 11 Mar 2025 13:37:25 +0800 Subject: clang-format --- src/chatManager.cpp | 16 ++++++++-------- src/chatManager.hpp | 25 +++++++++++++------------ src/chatServer.cpp | 45 ++++++++++++++++++++++----------------------- src/chatServer.hpp | 20 ++++++++++---------- src/format.hpp | 2 +- src/main.cpp | 44 ++++++++++++++++++++++---------------------- src/server.cpp | 6 +++--- src/session.cpp | 36 +++++++++++++++++------------------- src/session.hpp | 2 +- src/sessionManager.cpp | 33 +++++++++++++++++---------------- src/sessionManager.hpp | 20 ++++++++++---------- 11 files changed, 124 insertions(+), 125 deletions(-) (limited to 'src') diff --git a/src/chatManager.cpp b/src/chatManager.cpp index 0ed3b60..9e244f6 100644 --- a/src/chatManager.cpp +++ b/src/chatManager.cpp @@ -1,22 +1,22 @@ #include "chatManager.hpp" -#include "sessionManager.hpp" #include "log.hpp" +#include "sessionManager.hpp" CChatManager::CChatManager() { - log(LOG, "ChatManager: initialized"); + log(LOG, "ChatManager: initialized"); } CChatManager::~CChatManager() { - m_vMessages.clear(); - log(SYS, "ChatManager: bye"); + m_vMessages.clear(); + log(SYS, "ChatManager: bye"); } void CChatManager::newMessage(const SMessage &msg) { - log(LOG, "New message from {}: {}", msg.username, msg.msg); - broadcastMessage(msg); - m_vMessages.push_back(msg); + log(LOG, "New message from {}: {}", msg.username, msg.msg); + broadcastMessage(msg); + m_vMessages.push_back(msg); } void CChatManager::broadcastMessage(const SMessage &msg) { - g_pSessionManager->broadcastChat(NFormatter::fmt(eFormatType::NONE, "{}: {}", msg.username, msg.msg), msg.username); + g_pSessionManager->broadcastChat(NFormatter::fmt(eFormatType::NONE, "{}: {}", msg.username, msg.msg), msg.username); } diff --git a/src/chatManager.hpp b/src/chatManager.hpp index 253ab6a..702ef37 100644 --- a/src/chatManager.hpp +++ b/src/chatManager.hpp @@ -3,17 +3,18 @@ #include class CChatManager { -public: - CChatManager(); - ~CChatManager(); - struct SMessage { - std::string msg; - std::string username; - }; - void newMessage(const SMessage &msg); - void broadcastMessage(const SMessage &msg); -private: - void broadcastMessage(const std::string &msg, const std::string &username); - std::vector m_vMessages; + public: + CChatManager(); + ~CChatManager(); + struct SMessage { + std::string msg; + std::string username; + }; + void newMessage(const SMessage &msg); + void broadcastMessage(const SMessage &msg); + + private: + void broadcastMessage(const std::string &msg, const std::string &username); + std::vector m_vMessages; }; inline std::unique_ptr g_pChatManager; diff --git a/src/chatServer.cpp b/src/chatServer.cpp index 70504f9..e6213b8 100644 --- a/src/chatServer.cpp +++ b/src/chatServer.cpp @@ -1,44 +1,43 @@ #include "chatServer.hpp" -#include "server.hpp" -#include "sessionManager.hpp" #include "chatManager.hpp" #include "log.hpp" +#include "server.hpp" +#include "sessionManager.hpp" CChatServer::CChatServer() { - log(LOG, "ChatServer: initialized"); + log(LOG, "ChatServer: initialized"); }; CChatServer::~CChatServer() { - cleanup(); - log(SYS, "ChatServer: bye"); + cleanup(); + log(SYS, "ChatServer: bye"); } void CChatServer::cleanup() { - g_pChatManager.reset(); - // if (m_sessionThread.joinable()) - // m_sessionThread.join(); - g_pSessionManager.reset(); - g_pServer.reset(); + g_pChatManager.reset(); + // if (m_sessionThread.joinable()) + // m_sessionThread.join(); + g_pSessionManager.reset(); + g_pServer.reset(); } void CChatServer::initManagers() { - log(LOG, "ChatServer: initializing managers"); - log(LOG, "Creating Server"); - g_pServer = std::make_unique(8080); - log(LOG, "Creating SessionManager"); + log(LOG, "ChatServer: initializing managers"); + log(LOG, "Creating Server"); + g_pServer = std::make_unique(8080); + log(LOG, "Creating SessionManager"); g_pSessionManager = std::make_shared(); - log(LOG, "Creating ChatManager"); - g_pChatManager = std::make_unique(); + log(LOG, "Creating ChatManager"); + g_pChatManager = std::make_unique(); } void CChatServer::start() { - initManagers(); + initManagers(); - // will await while waiting for accept() to return a new client - m_sessionThread = std::jthread(&CSessionManager::run, g_pSessionManager.get()); - m_sessionThread.detach(); + // will await while waiting for accept() to return a new client + m_sessionThread = std::jthread(&CSessionManager::run, g_pSessionManager.get()); + m_sessionThread.detach(); - while (true) { - } + while (true) { + } } - diff --git a/src/chatServer.hpp b/src/chatServer.hpp index e205eb1..6094d92 100644 --- a/src/chatServer.hpp +++ b/src/chatServer.hpp @@ -2,16 +2,16 @@ #include class CChatServer { -public: - CChatServer(); - ~CChatServer(); - void start(); - void cleanup(); -private: - void initManagers(); - void initServer(); - std::jthread m_sessionThread; + public: + CChatServer(); + ~CChatServer(); + void start(); + void cleanup(); + + private: + void initManagers(); + void initServer(); + std::jthread m_sessionThread; }; inline std::unique_ptr g_pChatServer; - diff --git a/src/format.hpp b/src/format.hpp index 6e41e04..f079535 100644 --- a/src/format.hpp +++ b/src/format.hpp @@ -4,7 +4,7 @@ enum eFormatType : int8_t { NONE, - TRACE, + TRACE, LOG, WARN, ERR, diff --git a/src/main.cpp b/src/main.cpp index 3288b5c..115ad53 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,42 +1,42 @@ #include "chatServer.hpp" -#include #include "log.hpp" +#include #include static void handleSignal(int sig) { - signal(sig, SIG_DFL); + signal(sig, SIG_DFL); - log(SYS, "Caught signal: {}", sig); + log(SYS, "Caught signal: {}", sig); - switch (sig) { - default: - // quick_exit(less cleanup) if the cleanup took too long - signal(SIGALRM, [](int) { std::quick_exit(1); }); - alarm(5); + switch (sig) { + default: + // quick_exit(less cleanup) if the cleanup took too long + signal(SIGALRM, [](int) { std::quick_exit(1); }); + alarm(5); - std::exit(0); - break; - } + std::exit(0); + break; + } } static void registerSignals() { - signal(SIGINT, handleSignal); - signal(SIGTERM, handleSignal); + signal(SIGINT, handleSignal); + signal(SIGTERM, handleSignal); - // client may not finish reading hence the server will receive SIGPIPE, we don't want that to just crash the server - signal(SIGPIPE, SIG_IGN); + // client may not finish reading hence the server will receive SIGPIPE, we don't want that to just crash the server + signal(SIGPIPE, SIG_IGN); } // TODO: ARGC, ARGV. the CServer ctor should take a port number int main() { - registerSignals(); + registerSignals(); - g_pChatServer = std::make_unique(); - g_pChatServer->start(); + g_pChatServer = std::make_unique(); + g_pChatServer->start(); - // died - g_pChatServer->cleanup(); - g_pChatServer.reset(); + // died + g_pChatServer->cleanup(); + g_pChatServer.reset(); - return 0; + return 0; } diff --git a/src/server.cpp b/src/server.cpp index dbf48a7..8bcffc1 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -1,8 +1,8 @@ #include "server.hpp" +#include "log.hpp" #include #include #include -#include "log.hpp" CServer::CServer(uint16_t port) : m_sockfd(Hyprutils::OS::CFileDescriptor{socket(AF_INET, SOCK_STREAM, 0)}) { @@ -22,12 +22,12 @@ CServer::CServer(uint16_t port) ? throw std::runtime_error("Failed to bind or listen") : std::println("Server started on port: {}", port); - log(LOG, "Server: initialized"); + log(LOG, "Server: initialized"); }; CServer::~CServer() { m_sockfd.reset(); - log(SYS, "Server: bye"); + log(SYS, "Server: bye"); } Hyprutils::OS::CFileDescriptor *CServer::getSocket() { diff --git a/src/session.cpp b/src/session.cpp index 1c8dbf1..b3994ee 100644 --- a/src/session.cpp +++ b/src/session.cpp @@ -1,26 +1,25 @@ #include "session.hpp" +#include "chatManager.hpp" #include "log.hpp" #include "sessionManager.hpp" #include #include #include -#include "chatManager.hpp" - CSession::CSession(Hyprutils::OS::CFileDescriptor sockfd) : m_sockfd(std::move(sockfd)) { if (!m_sockfd.isValid()) throw std::runtime_error("session: Failed to create socket"); - log(TRACE, "session: initialized"); + log(TRACE, "session: initialized"); } CSession::~CSession() { onDisconnect(); m_sockfd.reset(); - self->second.reset(); - log(TRACE, "session({}): bye", m_name); + self->second.reset(); + log(TRACE, "session({}): bye", m_name); } void CSession::onConnect() { @@ -55,7 +54,7 @@ void CSession::recvLoop() { if (!recvData.good) break; - g_pChatManager->newMessage({.msg=recvData.data, .username=m_name}); + g_pChatManager->newMessage({.msg = recvData.data, .username = m_name}); } } @@ -82,10 +81,9 @@ CSession::SRecvData CSession::read(const std::string &msg) { void CSession::run() { onConnect(); - registerSession() ? - recvLoop() : - // TODO: get ip and print the ip also - log(LOG, "User exited without even registering"); + registerSession() ? recvLoop() : + // TODO: get ip and print the ip also + log(LOG, "User exited without even registering"); g_pSessionManager->removeSession(self); } @@ -98,19 +96,19 @@ bool CSession::registerSession() { if (recvData.data[0] == '\n' || recvData.data[0] == ' ') { write("Name cannot be empty", eFormatType::ERR); return registerSession(); - } + } - *std::remove(recvData.data, recvData.data+strlen(recvData.data), '\n') = '\0'; - if (g_pSessionManager->nameExists(recvData.data)) { - write("Name already exists", eFormatType::ERR); - return registerSession(); - } + *std::remove(recvData.data, recvData.data + strlen(recvData.data), '\n') = '\0'; + if (g_pSessionManager->nameExists(recvData.data)) { + write("Name already exists", eFormatType::ERR); + return registerSession(); + } this->m_name = recvData.data; log(LOG, "Client registered as: {}", m_name); - return true; + return true; } bool CSession::isValid() { @@ -148,6 +146,6 @@ void CSession::setSelf(std::pair> *self) } void CSession::onShutdown() { - write(SYS, "Shutting down, bye"); - g_pSessionManager->removeSession(self); + write(SYS, "Shutting down, bye"); + g_pSessionManager->removeSession(self); } diff --git a/src/session.hpp b/src/session.hpp index b446f4c..8a18950 100644 --- a/src/session.hpp +++ b/src/session.hpp @@ -42,6 +42,6 @@ class CSession { void onErrno(eEventType); void onRecv(const SRecvData &data); void onSend(const std::string &msg); - void onShutdown(); + void onShutdown(); friend class CSessionManager; }; diff --git a/src/sessionManager.cpp b/src/sessionManager.cpp index b4e1ad5..7b40bc2 100644 --- a/src/sessionManager.cpp +++ b/src/sessionManager.cpp @@ -1,29 +1,29 @@ #include "sessionManager.hpp" +#include "log.hpp" #include "server.hpp" #include "session.hpp" #include #include #include -#include "log.hpp" void CSessionManager::shutdownSessions() { for (const auto &[thread, session] : m_vSessions) - session->onShutdown(); + session->onShutdown(); } CSessionManager::CSessionManager() { - if (std::atexit([]() { g_pSessionManager->shutdownSessions(); })) - log(ERR, "Failed to register SessionManager atexit handler, will fallback to quick_exit after hang"); + if (std::atexit([]() { g_pSessionManager->shutdownSessions(); })) + log(ERR, "Failed to register SessionManager atexit handler, will fallback to quick_exit after hang"); - log(LOG, "SessionManager: initialized"); + log(LOG, "SessionManager: initialized"); }; CSessionManager::~CSessionManager() { for (auto &[thread, session] : m_vSessions) - if (thread.joinable()) - thread.join(); + if (thread.joinable()) + thread.join(); - log(SYS, "SessionManager: bye"); + log(SYS, "SessionManager: bye"); } std::pair> *CSessionManager::newSession(Hyprutils::OS::CFileDescriptor sockfd) { @@ -34,8 +34,8 @@ std::pair> *CSessionManager::newSession( } void CSessionManager::run() { - while (true) - newSession(Hyprutils::OS::CFileDescriptor{accept(g_pServer->getSocket()->get(), nullptr, nullptr) /* awaits new client/session */}); + while (true) + newSession(Hyprutils::OS::CFileDescriptor{accept(g_pServer->getSocket()->get(), nullptr, nullptr) /* awaits new client/session */}); } void CSessionManager::broadcast(const std::string &msg, eFormatType type) const { @@ -45,15 +45,16 @@ void CSessionManager::broadcast(const std::string &msg, eFormatType type) const void CSessionManager::broadcastChat(const std::string &msg, const std::string &username) const { for (const auto &[thread, session] : m_vSessions) { - if (!session) continue; - auto name = session->getName(); - if (name != username) - session->write(msg, NONE); - } + if (!session) + continue; + auto name = session->getName(); + if (name != username) + session->write(msg, NONE); + } } bool CSessionManager::nameExists(const std::string &name) { - return std::ranges::any_of(m_vSessions, [&name](const auto &s) { return s.second->getName() == name; }); + return std::ranges::any_of(m_vSessions, [&name](const auto &s) { return s.second->getName() == name; }); } void CSessionManager::removeSession(std::pair> *session) { diff --git a/src/sessionManager.hpp b/src/sessionManager.hpp index 8f2130a..be81dd9 100644 --- a/src/sessionManager.hpp +++ b/src/sessionManager.hpp @@ -10,22 +10,22 @@ class CSessionManager { public: CSessionManager(); ~CSessionManager(); - + std::pair> *newSession(Hyprutils::OS::CFileDescriptor sockfd); - void run(); - void broadcast(const std::string &msg, eFormatType type = NONE) const; - void kick(const CSession *session) const; - void addSession(const CSession &session); - void removeSession(std::pair> *session); + void run(); + void broadcast(const std::string &msg, eFormatType type = NONE) const; + void kick(const CSession *session) const; + void addSession(const CSession &session); + void removeSession(std::pair> *session); - bool nameExists(const std::string &name); - void shutdownSessions(); + bool nameExists(const std::string &name); + void shutdownSessions(); private: - void broadcastChat(const std::string &msg, const std::string &username) const; + void broadcastChat(const std::string &msg, const std::string &username) const; std::vector>> m_vSessions; - friend class CChatManager; + friend class CChatManager; }; inline std::shared_ptr g_pSessionManager; -- cgit v1.2.3