diff options
author | Machiavelli <none@none> | 2010-09-29 08:48:06 +0200 |
---|---|---|
committer | Machiavelli <none@none> | 2010-09-29 08:48:06 +0200 |
commit | bf72fa749ff3beef2ba226862e2a5af7c170fc49 (patch) | |
tree | b8f40bd36b67439e790f20f2b52c0ae864e547b5 /src/server/shared/Database/MySQLConnection.h | |
parent | dcbe4026c327539391e022c69e417928f83c4ab5 (diff) |
Core/DBLayer: Store MySQL connection details in a struct and print relevant data in sql driver messages
--HG--
branch : trunk
Diffstat (limited to 'src/server/shared/Database/MySQLConnection.h')
-rw-r--r-- | src/server/shared/Database/MySQLConnection.h | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/src/server/shared/Database/MySQLConnection.h b/src/server/shared/Database/MySQLConnection.h index d786dd83c01..0c18ad8b7fb 100644 --- a/src/server/shared/Database/MySQLConnection.h +++ b/src/server/shared/Database/MySQLConnection.h @@ -18,6 +18,7 @@ #include <ace/Activation_Queue.h> #include "DatabaseWorkerPool.h" +#include "Util.h" #ifndef _MYSQLCONNECTION_H #define _MYSQLCONNECTION_H @@ -27,6 +28,33 @@ class PreparedStatement; class MySQLPreparedStatement; class PingOperation; +struct MySQLConnectionInfo +{ + MySQLConnectionInfo() {} + MySQLConnectionInfo(const std::string& infoString) + { + Tokens tokens = StrSplit(infoString, ";"); + Tokens::iterator iter = tokens.begin(); + + if (iter != tokens.end()) + host = *iter++; + if (iter != tokens.end()) + port_or_socket = *iter++; + if (iter != tokens.end()) + user = *iter++; + if (iter != tokens.end()) + password = *iter++; + if (iter != tokens.end()) + database = *iter++; + } + + std::string user; + std::string password; + std::string database; + std::string host; + std::string port_or_socket; +}; + class MySQLConnection { template <class T> friend class DatabaseWorkerPool; @@ -37,7 +65,7 @@ class MySQLConnection MySQLConnection(ACE_Activation_Queue* queue); //! Constructor for asynchroneous connections. ~MySQLConnection(); - virtual bool Open(const std::string& infoString); //! Connection details. + virtual bool Open(const MySQLConnectionInfo& connInfo); //! Connection details. void Close(); public: |