icinga2/lib/icinga/user.ti
Yonas Habteab 186571ec99 Refresh the states & types bitsets whenever states & types attrs change
Since the types and states attributes are user configurable and allowed to change at
runtime, we need to update the actual filter bitsets whenever these attributes change.
Otherwise, the filter bitsets would be stale and not reflect their current state.
2025-06-06 13:31:44 +02:00

54 lines
1.1 KiB
Plaintext

/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
#include "icinga/customvarobject.hpp"
#include "base/array.hpp"
#impl_include "icinga/usergroup.hpp"
library icinga;
namespace icinga
{
class User : CustomVarObject
{
[config] String display_name {
get {{{
String displayName = m_DisplayName.load();
if (displayName.IsEmpty())
return GetName();
else
return displayName;
}}}
};
[config, no_user_modify, required, signal_with_old_value] array(name(UserGroup)) groups {
default {{{ return new Array(); }}}
};
[config, navigation] name(TimePeriod) period (PeriodRaw) {
navigate {{{
return TimePeriod::GetByName(GetPeriodRaw());
}}}
};
[config, no_storage] array(Value) types {
get;
set;
};
[no_user_view, no_user_modify] int type_filter_real (TypeFilter);
[config, no_storage] array(Value) states {
get;
set;
};
[no_user_view, no_user_modify] int state_filter_real (StateFilter);
[config] String email;
[config] String pager;
[config] bool enable_notifications {
default {{{ return true; }}}
};
[state] Timestamp last_notification;
};
}