From 70ea02b143d663266641a13d05d15a8cd5244440 Mon Sep 17 00:00:00 2001 From: Roland Jax Date: Tue, 11 Nov 2014 20:57:07 +0100 Subject: [PATCH] documentation for class Message added. --- src/ebusd/baseloop.cpp | 2 +- src/ebusd/connection.cpp | 2 +- src/ebusd/message.h | 35 +++++++++++++++++++++++++++++++---- 3 files changed, 33 insertions(+), 6 deletions(-) diff --git a/src/ebusd/baseloop.cpp b/src/ebusd/baseloop.cpp index 54051bd6..caa3af70 100644 --- a/src/ebusd/baseloop.cpp +++ b/src/ebusd/baseloop.cpp @@ -85,7 +85,7 @@ void BaseLoop::start() // send result to client result += '\n'; - Connection* connection = static_cast(message->getSource()); + Connection* connection = message->getConnection(); connection->addResult(Message(result)); delete message; diff --git a/src/ebusd/connection.cpp b/src/ebusd/connection.cpp index f48bfdd5..2ba605ba 100644 --- a/src/ebusd/connection.cpp +++ b/src/ebusd/connection.cpp @@ -77,7 +77,7 @@ void* Connection::run() break; // removed closed socket - if (datalen <= 0 || strncasecmp(data, "quit", 4) == 0) + if (datalen <= 0 || strcasecmp(data, "QUIT") == 0) break; // send data diff --git a/src/ebusd/message.h b/src/ebusd/message.h index 8344643e..55ee0f68 100644 --- a/src/ebusd/message.h +++ b/src/ebusd/message.h @@ -22,20 +22,47 @@ #include +/** forward declaration for class Connection */ +class Connection; +/** + * @brief class for data/message transfer between connection and baseloop + */ class Message { public: - Message(const std::string data, void* source = NULL) : m_data(data), m_source(source) {} - Message(const Message& src) : m_data(src.m_data), m_source(src.m_source) {} + /** + * @brief constructs a new instance with message and source client address + * @param data from client + * @param connection to return result to correct client + */ + Message(const std::string data, Connection* connection=NULL) + : m_data(data), m_connection(connection) {} + /** + * @brief copy constructor. + * @param src message object for copy + */ + Message(const Message& src) : m_data(src.m_data), m_connection(src.m_connection) {} + + /** + * @brief data from client + * @return data string + */ std::string getData() const { return m_data; } - void* getSource() const { return m_source; } + + /** + * @brief original connection + * @return pointer to connection + */ + Connection* getConnection() const { return m_connection; } private: + /** the data/message string */ std::string m_data; - void* m_source; + /** the source connection */ + Connection* m_connection; };