From: Gunnar Beutner Date: Fri, 7 Sep 2012 07:47:58 +0000 (+0200) Subject: Cleaned up Service::StateFromString function. X-Git-Tag: v0.0.1~112 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=91831b3260de8db78644dbbeeca7955362e82f70;p=icinga2 Cleaned up Service::StateFromString function. --- diff --git a/cib/service.cpp b/cib/service.cpp index e8d6c74fd..26bdcd115 100644 --- a/cib/service.cpp +++ b/cib/service.cpp @@ -391,24 +391,16 @@ void Service::ApplyCheckResult(const Dictionary::Ptr& cr) ServiceState Service::StateFromString(const String& state) { - /* TODO: make this thread-safe */ - static map stateLookup; - - if (stateLookup.empty()) { - stateLookup["ok"] = StateOK; - stateLookup["warning"] = StateWarning; - stateLookup["critical"] = StateCritical; - stateLookup["uncheckable"] = StateUncheckable; - stateLookup["unknown"] = StateUnknown; - } - - map::iterator it; - it = stateLookup.find(state); - - if (it == stateLookup.end()) - return StateUnknown; + if (state == "ok") + return StateOK; + else if (state == "warning") + return StateWarning; + else if (state == "critical") + return StateCritical; + else if (state == "uncheckable") + return StateUncheckable; else - return it->second; + return StateUnknown; } String Service::StateToString(ServiceState state)