Go to the documentation of this file.00001 #ifndef __TRADEMGEN_DBPARAMS_HPP
00002 #define __TRADEMGEN_DBPARAMS_HPP
00003
00004
00005
00006
00007
00008 #include <iosfwd>
00009 #include <string>
00010
00011 #include <trademgen/TRADEMGEN_Types.hpp>
00012 #include <trademgen/TRADEMGEN_Abstract.hpp>
00013
00014 namespace TRADEMGEN {
00015
00017 typedef std::list<std::string> DBParamsNameList_T;
00018
00019
00021 struct DBParams : public TRADEMGEN_Abstract {
00022 public:
00023
00025 std::string getUser() const {
00026 return _user;
00027 }
00028
00030 std::string getPassword() const {
00031 return _passwd;
00032 }
00033
00035 std::string getHost() const {
00036 return _host;
00037 }
00038
00040 std::string getPort() const {
00041 return _port;
00042 }
00043
00045 std::string getDBName() const {
00046 return _dbname;
00047 }
00048
00049
00050
00052 void setUser (const std::string& iUser) {
00053 _user = iUser;
00054 }
00055
00057 void setPassword (const std::string& iPasswd) {
00058 _passwd = iPasswd;
00059 }
00060
00062 void setHost (const std::string& iHost) {
00063 _host = iHost;
00064 }
00065
00067 void setPort (const std::string& iPort) {
00068 _port = iPort;
00069 }
00070
00072 void setDBName (const std::string& iDBName) {
00073 _dbname = iDBName;
00074 }
00075
00076
00077 public:
00078
00080 bool check () const {
00081 if (_user.empty() == true || _passwd.empty() == true
00082 || _host.empty() == true || _port.empty()
00083 || _dbname.empty() == true) {
00084 return false;
00085 }
00086 return true;
00087 }
00088
00089 public:
00090
00093 void toStream (std::ostream& ioOut) const {
00094 ioOut << toString();
00095 }
00096
00099 void fromStream (std::istream&) {
00100 }
00101
00103 std::string toShortString() const {
00104 std::ostringstream oStr;
00105 oStr << _dbname << "." << _user << "@" << _host << ":" << _port;
00106 return oStr.str();
00107 }
00108
00110 std::string toString() const {
00111 std::ostringstream oStr;
00112 oStr << _dbname << "." << _user << "@" << _host << ":" << _port;
00113 return oStr.str();
00114 }
00115
00116
00117 public:
00119 DBParams (const std::string& iDBUser, const std::string& iDBPasswd,
00120 const std::string& iDBHost, const std::string& iDBPort,
00121 const std::string& iDBName)
00122 : _user (iDBUser), _passwd (iDBPasswd), _host (iDBHost), _port (iDBPort),
00123 _dbname (iDBName) {
00124 }
00125
00127
00129
00130
00132 virtual ~DBParams() {}
00133
00134
00135 private:
00136
00138 std::string _user;
00140 std::string _passwd;
00142 std::string _host;
00144 std::string _port;
00146 std::string _dbname;
00147 };
00148
00149 }
00150 #endif // __TRADEMGEN_DBPARAMS_HPP