template<typename TKey, typename TValue>
struct range_mutable_iterator<shared_ptr<icinga::ObjectMap<TKey, TValue> > >
{
- typedef typename shared_ptr<icinga::ObjectMap<TKey, TValue> >::Iterator type;
+ typedef shared_ptr<icinga::ObjectMap<TKey, TValue> > objtype;
+ typedef typename objtype::Iterator type;
};
template<typename TKey, typename TValue>
struct range_const_iterator<shared_ptr<icinga::ObjectMap<TKey, TValue> > >
{
- typedef typename shared_ptr<icinga::ObjectMap<TKey, TValue> > type;
+ typedef shared_ptr<icinga::ObjectMap<TKey, TValue> > objtype;
+ typedef typename objtype::Iterator type;
};
}
FD_ZERO(&readfds);
int fd;
- BOOST_FOREACH(tie(fd, tuples::ignore), tasks);
+ BOOST_FOREACH(tie(fd, tuples::ignore), tasks) {
if (fd > nfds)
nfds = fd;
if (GetProperty("dependencies", &dependencies)) {
dependencies = Service::ResolveDependencies(*this, dependencies);
- string dependency;
+ Variant dependency;
BOOST_FOREACH(tie(tuples::ignore, dependency), dependencies) {
Service service = Service::GetByName(dependency);
if (GetProperty("dependencies", &dependencies)) {
dependencies = Service::ResolveDependencies(*this, dependencies);
- string dependency;
+ Variant dependency;
BOOST_FOREACH(tie(tuples::ignore, dependency), dependencies) {
Service service = Service::GetByName(dependency);
if (GetProperty("hostchecks", &hostchecks)) {
hostchecks = Service::ResolveDependencies(*this, hostchecks);
- string hostcheck;
+ Variant hostcheck;
BOOST_FOREACH(tie(tuples::ignore, hostcheck), hostchecks) {
Service service = Service::GetByName(hostcheck);
if (!dependencies)
return;
- string dependency;
+ Variant dependency;
BOOST_FOREACH(tie(tuples::ignore, dependency), dependencies) {
if (result->Contains(dependency))
continue;
Dictionary::Ptr dependencies = boost::make_shared<Dictionary>();
GetDependenciesRecursive(dependencies);
- string dependency;
+ Variant dependency;
BOOST_FOREACH(tie(tuples::ignore, dependency), dependencies) {
Service service = Service::GetByName(dependency);
if (!checkers)
return true;
- string pattern;
+ Variant pattern;
BOOST_FOREACH(tie(tuples::ignore, pattern), checkers) {
if (Utility::Match(pattern, checker))
return true;
Dictionary::Ptr result = boost::make_shared<Dictionary>();
- string dependency;
+ Variant dependency;
BOOST_FOREACH(tie(tuples::ignore, dependency), dependencies) {
string name;
if (services && services->Contains(dependency))
- name = host.GetName() + "-" + dependency;
+ name = host.GetName() + "-" + static_cast<string>(dependency);
else
- name = dependency;
+ name = static_cast<string>(dependency);
result->Set(name, name);
}
dict = host.GetGroups();
if (dict) {
- string hostgroup;
+ Variant hostgroup;
BOOST_FOREACH(tie(tuples::ignore, hostgroup), dict) {
hostgroups[hostgroup].push_back(host.GetName());
}
dict = service.GetGroups();
if (dict) {
- string servicegroup;
+ Variant servicegroup;
BOOST_FOREACH(tie(tuples::ignore, servicegroup), dict) {
servicegroups[servicegroup].push_back(service);
}
if (!role->GetProperty(messageType, &permissions))
continue;
- string permission;
+ Variant permission;
BOOST_FOREACH(tie(tuples::ignore, permission), permissions) {
if (Utility::Match(permission, message))
return true;
Dictionary::Ptr publications;
if (message.GetPublications(&publications)) {
- string publication;
+ Variant publication;
BOOST_FOREACH(tie(tuples::ignore, publication), publications) {
if (trusted || HasMessagePermission(roles, "publications", publication)) {
info->Publications.insert(publication);
Dictionary::Ptr subscriptions;
if (message.GetSubscriptions(&subscriptions)) {
- string subscription;
+ Variant subscription;
BOOST_FOREACH(tie(tuples::ignore, subscription), subscriptions) {
if (trusted || HasMessagePermission(roles, "subscriptions", subscription)) {
info->Subscriptions.insert(subscription);