diff options
author | Guillaume Melquiond <guillaume.melquiond@gmail.com> | 2007-07-28 20:14:23 +0000 |
---|---|---|
committer | Guillaume Melquiond <guillaume.melquiond@gmail.com> | 2007-07-28 20:14:23 +0000 |
commit | e166458f5425316f4f48aadd7007917ab876be17 (patch) | |
tree | 7ccc27db50bb6600cc4fee074485e3b886e58049 /src/account-server | |
parent | 32337eb103384ed8bdb7a43ee54ab550680db62b (diff) | |
download | manaserv-e166458f5425316f4f48aadd7007917ab876be17.tar.gz manaserv-e166458f5425316f4f48aadd7007917ab876be17.tar.bz2 manaserv-e166458f5425316f4f48aadd7007917ab876be17.tar.xz manaserv-e166458f5425316f4f48aadd7007917ab876be17.zip |
Replaced user names by client pointers when handling channels, in order to reduce lookups in ChatHandler::sendInChannel.
Diffstat (limited to 'src/account-server')
-rw-r--r-- | src/account-server/dalstorage.cpp | 20 | ||||
-rw-r--r-- | src/account-server/dalstorage.hpp | 4 | ||||
-rw-r--r-- | src/account-server/dalstoragesql.hpp | 9 | ||||
-rw-r--r-- | src/account-server/serverhandler.cpp | 2 | ||||
-rw-r--r-- | src/account-server/storage.hpp | 4 |
5 files changed, 18 insertions, 21 deletions
diff --git a/src/account-server/dalstorage.cpp b/src/account-server/dalstorage.cpp index a4506846..b8243f37 100644 --- a/src/account-server/dalstorage.cpp +++ b/src/account-server/dalstorage.cpp @@ -691,7 +691,7 @@ DALStorage::updateCharacter(CharacterPtr character) return true; } -std::map<short, ChatChannel> +std::map<unsigned short, ChatChannel> DALStorage::getChannelList() { // If not opened already @@ -699,15 +699,14 @@ DALStorage::getChannelList() // specialize the string_to functor to convert // a string to a short. - string_to<short> toShort; - string_to<bool> toBool; + string_to<int> toInt; // The formatted datas - std::map<short, ChatChannel> channels; + std::map<unsigned short, ChatChannel> channels; try { std::stringstream sql; - sql << "select id, name, announcement, password, privacy from "; + sql << "select id, name, announcement, password from "; sql << CHANNELS_TBL_NAME; sql << ";"; @@ -720,14 +719,13 @@ DALStorage::getChannelList() for (unsigned int i = 0; i < channelInfo.rows(); ++i) { - short channelId = toShort(channelInfo(i, 0)); + unsigned short channelId = toInt(channelInfo(i, 0)); channels.insert( std::make_pair(channelId, ChatChannel(channelId, channelInfo(i, 1), channelInfo(i, 2), - channelInfo(i, 3), - toBool(channelInfo(i, 4))))); + channelInfo(i, 3)))); LOG_DEBUG("Channel (" << channelId << ") loaded: " << channelInfo(i, 1) << ": " << channelInfo(i, 2)); @@ -744,7 +742,7 @@ DALStorage::getChannelList() } void -DALStorage::updateChannels(std::map<short, ChatChannel>& channelList) +DALStorage::updateChannels(std::map<unsigned short, ChatChannel>& channelList) { #if defined (SQLITE_SUPPORT) // Reopen the db in this thread for sqlite, to avoid @@ -762,11 +760,11 @@ DALStorage::updateChannels(std::map<short, ChatChannel>& channelList) mDb->execSql(sql.str()); - for (std::map<short, ChatChannel>::iterator i = channelList.begin(); + for (std::map<unsigned short, ChatChannel>::iterator i = channelList.begin(); i != channelList.end();) { // insert registered channel if id < MAX_PUBLIC_CHANNELS_RANGE; - if ( i->first < (signed)MAX_PUBLIC_CHANNELS_RANGE ) + if (i->first < MAX_PUBLIC_CHANNELS_RANGE) { if (i->second.getName() != "") { diff --git a/src/account-server/dalstorage.hpp b/src/account-server/dalstorage.hpp index b84b1aa7..00a5b69b 100644 --- a/src/account-server/dalstorage.hpp +++ b/src/account-server/dalstorage.hpp @@ -150,7 +150,7 @@ class DALStorage: public Storage * Gives the list of opened public channels registered in database * @return a map of the public channels */ - std::map<short, ChatChannel> + std::map<unsigned short, ChatChannel> getChannelList(); /** @@ -158,7 +158,7 @@ class DALStorage: public Storage * to the one in db. */ void - updateChannels(std::map<short, ChatChannel>& channelList); + updateChannels(std::map<unsigned short, ChatChannel>& channelList); /** * Add a new guild diff --git a/src/account-server/dalstoragesql.hpp b/src/account-server/dalstoragesql.hpp index b129b797..54026d4c 100644 --- a/src/account-server/dalstoragesql.hpp +++ b/src/account-server/dalstoragesql.hpp @@ -316,20 +316,17 @@ const std::string SQL_CHANNELS_TABLE( "id INTEGER PRIMARY KEY," "name VARCHAR(32) NOT NULL UNIQUE," "announcement VARCHAR(256) NOT NULL," - "password VARCHAR(32) NOT NULL," - "privacy TINYINT NOT NULL" + "password VARCHAR(32) NOT NULL" #elif defined (SQLITE_SUPPORT) "id INTEGER PRIMARY KEY," "name TEXT NOT NULL UNIQUE," "announcement TEXT NOT NULL," - "password TEXT NOT NULL," - "privacy INTEGER NOT NULL" + "password TEXT NOT NULL" #elif defined (POSTGRESQL_SUPPORT) "id SERIAL PRIMARY KEY," "name TEXT NOT NULL UNIQUE," "announcement TEXT NOT NULL," - "password TEXT NOT NULL," - "privacy INTEGER NOT NULL" + "password TEXT NOT NULL" #endif ");" ); diff --git a/src/account-server/serverhandler.cpp b/src/account-server/serverhandler.cpp index 5ef3403d..9e53356f 100644 --- a/src/account-server/serverhandler.cpp +++ b/src/account-server/serverhandler.cpp @@ -364,6 +364,7 @@ void ServerHandler::processMessage(NetComputer *comp, MessageIn &msg) comp->send(result); } +#if 0 void ServerHandler::enterChannel(const std::string &name, CharacterData *player) { @@ -409,6 +410,7 @@ void ServerHandler::enterChannel(const std::string &name, chatHandler->sendGuildEnterChannel(result, player->getName()); } +#endif void ServerHandler::sendInvite(const std::string &invitedName, const std::string &inviterName, diff --git a/src/account-server/storage.hpp b/src/account-server/storage.hpp index fbd2400f..55a82abf 100644 --- a/src/account-server/storage.hpp +++ b/src/account-server/storage.hpp @@ -264,7 +264,7 @@ class Storage * Gives the list of opened public channels registered in database * @return a map of the public channels */ - virtual std::map<short, ChatChannel> + virtual std::map<unsigned short, ChatChannel> getChannelList() = 0; /** @@ -272,7 +272,7 @@ class Storage * to the one in db. */ virtual void - updateChannels(std::map<short, ChatChannel>& channelList) = 0; + updateChannels(std::map<unsigned short, ChatChannel>& channelList) = 0; /** * Add a new guild |