]> jfr.im git - irc/gameservirc.git/blobdiff - gameserv-2.0/libgameservgldl/src/DataLayer/MySQL/MySQLId.cpp
Added mysql++ exception handling to MySQLItemDAO.cpp
[irc/gameservirc.git] / gameserv-2.0 / libgameservgldl / src / DataLayer / MySQL / MySQLId.cpp
index 5ef46ee19507b4aea7bf17a31969b3dc759c37c9..3e2f6a4827ca29849853582c653babbba4a960cb 100644 (file)
@@ -26,14 +26,22 @@ MySQLId::~MySQLId()
 {\r
 }\r
 \r
-string MySQLId::CreatePlayerId(const string &Name)\r
+string MySQLId::CreatePlayerId(const unsigned long long &Number)\r
 {\r
-       return Name;\r
+       return lexical_cast<string>(Number);\r
 }\r
 \r
-string MySQLId::GetNameFromPlayerId(const string &Id)\r
+unsigned long long MySQLId::GetPlayerNumberFromId(const string &Id)\r
 {\r
-       return Id;\r
+       try\r
+       {\r
+               return lexical_cast<unsigned long long>(Id);\r
+       }\r
+       catch (bad_lexical_cast)\r
+       {\r
+               throw GameServException(str(format("Improperly formatted Player ID: %1%") % Id),\r
+                       __FILE__, __LINE__);\r
+       }\r
 }\r
 \r
 string MySQLId::CreateItemId(const unsigned long long &Number)\r
@@ -45,7 +53,7 @@ unsigned long long MySQLId::GetItemNumberFromId(const string &Id)
 {\r
        try\r
        {\r
-               return lexical_cast<unsigned int>(Id);\r
+               return lexical_cast<unsigned long long>(Id);\r
        }\r
        catch (bad_lexical_cast)\r
        {\r