diff options
Diffstat (limited to 'lib/db_ido/dbconnection.ti')
-rw-r--r-- | lib/db_ido/dbconnection.ti | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/lib/db_ido/dbconnection.ti b/lib/db_ido/dbconnection.ti new file mode 100644 index 0000000..ad02b40 --- /dev/null +++ b/lib/db_ido/dbconnection.ti @@ -0,0 +1,82 @@ +/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */ + +#include "db_ido/dbquery.hpp" +#include "base/configobject.hpp" + +library db_ido; + +namespace icinga +{ + +abstract class DbConnection : ConfigObject +{ + [config] String table_prefix { + default {{{ return "icinga_"; }}} + }; + + [config, required] Dictionary::Ptr cleanup { + default {{{ return new Dictionary(); }}} + }; + + [config] Array::Ptr categories { + default {{{ + return new Array({ + "DbCatConfig", + "DbCatState", + "DbCatAcknowledgement", + "DbCatComment", + "DbCatDowntime", + "DbCatEventHandler", + "DbCatFlapping", + "DbCatNotification", + "DbCatProgramStatus", + "DbCatRetention", + "DbCatStateHistory" + }); + }}} + }; + [no_user_view, no_user_modify] int categories_filter_real (CategoryFilter); + + [config] bool enable_ha { + default {{{ return true; }}} + }; + + [config] double failover_timeout { + default {{{ return 30; }}} + }; + + [state, no_user_modify] double last_failover; + + [no_user_modify] String schema_version; + [no_user_modify] bool connected; + [no_user_modify] bool should_connect { + default {{{ return true; }}} + }; +}; + + +validator DbConnection { + Dictionary cleanup { + Number acknowledgements_age; + Number commenthistory_age; + Number contactnotifications_age; + Number contactnotificationmethods_age; + Number downtimehistory_age; + Number eventhandlers_age; + Number externalcommands_age; + Number flappinghistory_age; + Number hostchecks_age; + Number logentries_age; + Number notifications_age; + Number processevents_age; + Number statehistory_age; + Number servicechecks_age; + Number systemcommands_age; + }; + + Array categories { + String "*"; + }; +}; + +} |