2019-02-25 14:48:22 +01:00
|
|
|
/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
|
2014-10-17 19:44:31 +02:00
|
|
|
|
2014-05-25 16:23:35 +02:00
|
|
|
#include "icinga/customvarobject.hpp"
|
2015-01-21 08:47:45 +01:00
|
|
|
#include "base/function.hpp"
|
2013-10-26 09:41:45 +02:00
|
|
|
|
2015-08-04 14:47:44 +02:00
|
|
|
library icinga;
|
|
|
|
|
2013-10-26 09:41:45 +02:00
|
|
|
namespace icinga
|
|
|
|
{
|
|
|
|
|
2014-05-12 16:45:25 +02:00
|
|
|
class TimePeriod : CustomVarObject
|
2013-10-26 09:41:45 +02:00
|
|
|
{
|
|
|
|
[config] String display_name {
|
2013-10-30 09:55:00 +01:00
|
|
|
get {{{
|
2022-05-02 16:40:29 +02:00
|
|
|
String displayName = m_DisplayName.load();
|
|
|
|
if (displayName.IsEmpty())
|
2013-10-30 09:55:00 +01:00
|
|
|
return GetName();
|
|
|
|
else
|
2022-05-02 16:40:29 +02:00
|
|
|
return displayName;
|
2013-10-30 09:55:00 +01:00
|
|
|
}}}
|
2013-10-26 09:41:45 +02:00
|
|
|
};
|
2021-10-08 16:43:09 +02:00
|
|
|
[config, signal_with_old_value] Dictionary::Ptr ranges;
|
2014-11-30 23:32:13 +01:00
|
|
|
[config, required] Function::Ptr update;
|
2016-03-25 12:55:11 +01:00
|
|
|
[config] bool prefer_includes {
|
|
|
|
default {{{ return true; }}}
|
|
|
|
};
|
2021-10-08 16:43:09 +02:00
|
|
|
[config, required, signal_with_old_value] array(name(TimePeriod)) excludes {
|
2016-03-25 12:55:11 +01:00
|
|
|
default {{{ return new Array(); }}}
|
|
|
|
};
|
2021-10-08 16:43:09 +02:00
|
|
|
[config, required, signal_with_old_value] array(name(TimePeriod)) includes {
|
2016-03-25 12:55:11 +01:00
|
|
|
default {{{ return new Array(); }}}
|
|
|
|
};
|
2015-10-20 08:20:35 +02:00
|
|
|
[state, no_user_modify] Value valid_begin;
|
|
|
|
[state, no_user_modify] Value valid_end;
|
|
|
|
[state, no_user_modify] Array::Ptr segments;
|
2015-02-23 14:06:32 +01:00
|
|
|
[no_storage] bool is_inside {
|
|
|
|
get;
|
|
|
|
};
|
2013-10-26 09:41:45 +02:00
|
|
|
};
|
|
|
|
|
2014-11-30 23:32:13 +01:00
|
|
|
validator TimePeriod {
|
|
|
|
Dictionary ranges {
|
|
|
|
String "*";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2013-10-30 09:55:00 +01:00
|
|
|
}
|