summaryrefslogtreecommitdiff
path: root/indra/llmessage/llavatarnamecache.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/llmessage/llavatarnamecache.cpp')
-rw-r--r--indra/llmessage/llavatarnamecache.cpp147
1 files changed, 77 insertions, 70 deletions
diff --git a/indra/llmessage/llavatarnamecache.cpp b/indra/llmessage/llavatarnamecache.cpp
index 16bfa37b0e..610bc58057 100644
--- a/indra/llmessage/llavatarnamecache.cpp
+++ b/indra/llmessage/llavatarnamecache.cpp
@@ -38,6 +38,11 @@
#include <cctype> // tolower()
+namespace LLAvatarNameCache
+{
+ std::map<LLUUID, LLAvatarName> sCache;
+}
+
static std::string slid_from_full_name(const std::string& full_name)
{
std::string id = full_name;
@@ -52,64 +57,67 @@ static std::string slid_from_full_name(const std::string& full_name)
return id;
}
-static std::map<LLUUID, std::string> sDisplayNames;
-
-// JAMESDEBUG HACK temporary IDEVO code
-static std::string get_display_name(const LLUUID& id)
-{
- if (sDisplayNames.empty())
- {
- LLUUID id;
- const unsigned char miyazaki_hayao_san[]
- = { 0xE5, 0xAE, 0xAE, 0xE5, 0xB4, 0x8E,
- 0xE9, 0xA7, 0xBF,
- 0xE3, 0x81, 0x95, 0xE3, 0x82, 0x93, '\0' };
- id.set("27888d5f-4ddb-4df3-ad36-a1483ce0b3d9"); // miyazaki23
- sDisplayNames[id] = (const char*)miyazaki_hayao_san;
-
- id.set("3e5bf676-3577-c9ee-9fac-10df430015a1"); // Jim Linden
- sDisplayNames[id] = "Jim Jenkins";
-
- const unsigned char jose_sanchez[] =
- { 'J','o','s',0xC3,0xA9,' ','S','a','n','c','h','e','z', '\0' };
- id.set("a2e76fcd-9360-4f6d-a924-938f923df11a"); // James Linden
- sDisplayNames[id] = (const char*)jose_sanchez;
-
- id.set("a23fff6c-80ae-4997-9253-48272fd01d3c"); // bobsmith123
- sDisplayNames[id] = (const char*)jose_sanchez;
-
- id.set("3f7ced39-5e38-4fdd-90f2-423560b1e6e2"); // Hamilton Linden
- sDisplayNames[id] = "Hamilton Hitchings";
-
- id.set("537da1e1-a89f-4f9b-9056-b1f0757ccdd0"); // Rome Linden
- sDisplayNames[id] = "Rome Portlock";
-
- id.set("244195d6-c9b7-4fd6-9229-c3a8b2e60e81"); // M Linden
- sDisplayNames[id] = "Mark Kingdon";
-
- id.set("49856302-98d4-4e32-b5e9-035e5b4e83a4"); // T Linden
- sDisplayNames[id] = "Tom Hale";
-
- id.set("e6ed7825-708f-4c6b-b6a7-f3fe921a9176"); // Callen Linden
- sDisplayNames[id] = "Christina Allen";
-
- id.set("a7f0ac18-205f-41d2-b5b4-f75f096ae511"); // Crimp Linden
- sDisplayNames[id] = "Chris Rimple";
- }
-
- std::map<LLUUID,std::string>::iterator it = sDisplayNames.find(id);
- if (it != sDisplayNames.end())
- {
- return it->second;
- }
- else
- {
- return std::string();
- }
-}
-
void LLAvatarNameCache::initClass()
{
+ // HACK - prepopulate the cache
+ LLAvatarName name;
+ LLUUID id;
+
+ name.mSLID = "miyazaki23";
+ const unsigned char miyazaki_hayao_san[]
+ = { 0xE5, 0xAE, 0xAE, 0xE5, 0xB4, 0x8E,
+ 0xE9, 0xA7, 0xBF,
+ 0xE3, 0x81, 0x95, 0xE3, 0x82, 0x93, '\0' };
+ name.mDisplayName = (const char*)miyazaki_hayao_san;
+ name.mBadge = "Person_Check";
+ sCache[LLUUID("27888d5f-4ddb-4df3-ad36-a1483ce0b3d9")] = name;
+
+ name.mSLID = "jim.linden";
+ name.mDisplayName = "Jim Jenkins";
+ name.mBadge = "Person_Star";
+ sCache[LLUUID("3e5bf676-3577-c9ee-9fac-10df430015a1")] = name;
+
+ name.mSLID = "james.linden";
+ const unsigned char jose_sanchez[] =
+ { 'J','o','s',0xC3,0xA9,' ','S','a','n','c','h','e','z', '\0' };
+ name.mDisplayName = (const char*)jose_sanchez;
+ name.mBadge = "35f217a3-f618-49cf-bbca-c86d486551a9"; // IMG_SHOT
+ sCache[LLUUID("a2e76fcd-9360-4f6d-a924-938f923df11a")] = name;
+
+ name.mSLID = "bobsmith123";
+ name.mDisplayName = (const char*)jose_sanchez;
+ name.mBadge = "";
+ sCache[LLUUID("a23fff6c-80ae-4997-9253-48272fd01d3c")] = name;
+
+ name.mSLID = "hamilton.linden";
+ name.mDisplayName = "Hamilton Hitchings";
+ name.mBadge = "Person_Star";
+ sCache[LLUUID("3f7ced39-5e38-4fdd-90f2-423560b1e6e2")] = name;
+
+ name.mSLID = "rome.linden";
+ name.mDisplayName = "Rome Portlock";
+ name.mBadge = "Person_Star";
+ sCache[LLUUID("537da1e1-a89f-4f9b-9056-b1f0757ccdd0")] = name;
+
+ name.mSLID = "m.linden";
+ name.mDisplayName = "Mark Kingdon";
+ name.mBadge = "Person_Star";
+ sCache[LLUUID("244195d6-c9b7-4fd6-9229-c3a8b2e60e81")] = name;
+
+ name.mSLID = "t.linden";
+ name.mDisplayName = "Tom Hale";
+ name.mBadge = "Person_Star";
+ sCache[LLUUID("49856302-98d4-4e32-b5e9-035e5b4e83a4")] = name;
+
+ name.mSLID = "callen.linden";
+ name.mDisplayName = "Christina Allen";
+ name.mBadge = "Person_Star";
+ sCache[LLUUID("e6ed7825-708f-4c6b-b6a7-f3fe921a9176")] = name;
+
+ name.mSLID = "crimp.linden";
+ name.mDisplayName = "Chris Rimple";
+ name.mBadge = "Person_Star";
+ sCache[LLUUID("a7f0ac18-205f-41d2-b5b4-f75f096ae511")] = name;
}
void LLAvatarNameCache::cleanupClass()
@@ -130,24 +138,23 @@ void LLAvatarNameCache::idle()
bool LLAvatarNameCache::get(const LLUUID& agent_id, LLAvatarName *av_name)
{
+ std::map<LLUUID,LLAvatarName>::iterator it = sCache.find(agent_id);
+ if (it != sCache.end())
+ {
+ *av_name = it->second;
+ return true;
+ }
+
std::string full_name;
- bool found = gCacheName->getFullName(agent_id, full_name);
- if (found)
+ if (gCacheName->getFullName(agent_id, full_name))
{
av_name->mSLID = slid_from_full_name(full_name);
-
- std::string display_name = get_display_name(agent_id);
- if (!display_name.empty())
- {
- av_name->mDisplayName = display_name;
- }
- else
- {
- // ...no explicit display name, use legacy name
- av_name->mDisplayName = full_name;
- }
+ av_name->mDisplayName = full_name;
+ av_name->mBadge = "Generic_Person";
+ return true;
}
- return found;
+
+ return false;
}
void LLAvatarNameCache::get(const LLUUID& agent_id, name_cache_callback_t callback)