Skip to content
Snippets Groups Projects
Commit acc8ae40 authored by Leyla Farazha's avatar Leyla Farazha
Browse files
QAR-433 make max queued size on event queue configurable
parent 3f08a67d
No related branches found
No related tags found
No related merge requests found
...@@ -562,5 +562,8 @@ ...@@ -562,5 +562,8 @@
<map> <map>
</map> </map>
</map> </map>
<key>maxQueuedEvents</key>
<integer>100</integer>
</map> </map>
</llsd> </llsd>
...@@ -66,6 +66,7 @@ public: ...@@ -66,6 +66,7 @@ public:
/* virtual */ void loadFile(); /* virtual */ void loadFile();
void loadServerDefaults(const LLSD& data); void loadServerDefaults(const LLSD& data);
void loadMaxQueuedEvents(const LLSD& data);
void loadMessages(const LLSD& data); void loadMessages(const LLSD& data);
void loadCapBans(const LLSD& blacklist); void loadCapBans(const LLSD& blacklist);
void loadMessageBans(const LLSD& blacklist); void loadMessageBans(const LLSD& blacklist);
...@@ -73,6 +74,7 @@ public: ...@@ -73,6 +74,7 @@ public:
public: public:
LLSD mCapBans; LLSD mCapBans;
S32 mMaxQueuedEvents;
}; };
std::string LLMessageConfigFile::filename() std::string LLMessageConfigFile::filename()
...@@ -112,6 +114,7 @@ void LLMessageConfigFile::loadFile() ...@@ -112,6 +114,7 @@ void LLMessageConfigFile::loadFile()
} }
} }
loadServerDefaults(data); loadServerDefaults(data);
loadMaxQueuedEvents(data);
loadMessages(data); loadMessages(data);
loadCapBans(data); loadCapBans(data);
loadMessageBans(data); loadMessageBans(data);
...@@ -122,6 +125,19 @@ void LLMessageConfigFile::loadServerDefaults(const LLSD& data) ...@@ -122,6 +125,19 @@ void LLMessageConfigFile::loadServerDefaults(const LLSD& data)
mServerDefault = data["serverDefaults"][sServerName].asString(); mServerDefault = data["serverDefaults"][sServerName].asString();
} }
const S32 DEFAULT_MAX_QUEUED_EVENTS = 100;
void LLMessageConfigFile::loadMaxQueuedEvents(const LLSD& data)
{
if (data.has("maxQueuedEvents"))
{
mMaxQueuedEvents = data["maxQueuedEvents"].asInteger();
}
else
{
mMaxQueuedEvents = DEFAULT_MAX_QUEUED_EVENTS;
}
}
void LLMessageConfigFile::loadMessages(const LLSD& data) void LLMessageConfigFile::loadMessages(const LLSD& data)
{ {
mMessages = data["messages"]; mMessages = data["messages"];
...@@ -191,10 +207,10 @@ void LLMessageConfig::useConfig(const LLSD& config) ...@@ -191,10 +207,10 @@ void LLMessageConfig::useConfig(const LLSD& config)
{ {
LLMessageConfigFile &the_file = LLMessageConfigFile::instance(); LLMessageConfigFile &the_file = LLMessageConfigFile::instance();
the_file.loadServerDefaults(config); the_file.loadServerDefaults(config);
the_file.loadMaxQueuedEvents(config);
the_file.loadMessages(config); the_file.loadMessages(config);
the_file.loadCapBans(config); the_file.loadCapBans(config);
the_file.loadMessageBans(config); the_file.loadMessageBans(config);
} }
//static //static
...@@ -212,6 +228,13 @@ LLMessageConfig::Flavor LLMessageConfig::getServerDefaultFlavor() ...@@ -212,6 +228,13 @@ LLMessageConfig::Flavor LLMessageConfig::getServerDefaultFlavor()
return NO_FLAVOR; return NO_FLAVOR;
} }
//static
S32 LLMessageConfig::getMaxQueuedEvents()
{
LLMessageConfigFile& file = LLMessageConfigFile::instance();
return file.mMaxQueuedEvents;
}
//static //static
LLMessageConfig::Flavor LLMessageConfig::getMessageFlavor(const std::string& msg_name) LLMessageConfig::Flavor LLMessageConfig::getMessageFlavor(const std::string& msg_name)
{ {
......
...@@ -48,6 +48,7 @@ public: ...@@ -48,6 +48,7 @@ public:
static void useConfig(const LLSD& config); static void useConfig(const LLSD& config);
static Flavor getServerDefaultFlavor(); static Flavor getServerDefaultFlavor();
static S32 getMaxQueuedEvents();
// For individual messages // For individual messages
static Flavor getMessageFlavor(const std::string& msg_name); static Flavor getMessageFlavor(const std::string& msg_name);
......
...@@ -221,4 +221,21 @@ namespace tut ...@@ -221,4 +221,21 @@ namespace tut
LLMessageConfig::onlySendLatest("msg2"), LLMessageConfig::onlySendLatest("msg2"),
false); false);
} }
template<> template<>
void LLMessageConfigTestObject::test<9>()
// tests that event queue max is reloaded
{
LLSD config;
config["maxQueuedEvents"] = 200;
LLMessageConfig::useConfig(config);
ensure_equals("Ensure setting maxQueuedEvents",
LLMessageConfig::getMaxQueuedEvents(),
200);
LLMessageConfig::useConfig(LLSD());
ensure_equals("Ensure default of event queue max 100",
LLMessageConfig::getMaxQueuedEvents(),
100);
}
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment