]> granicus.if.org Git - icinga2/blob - lib/livestatus/hostgroupstable.hpp
Merge pull request #7000 from Icinga/bugfix/goto-loop
[icinga2] / lib / livestatus / hostgroupstable.hpp
1 /* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
2
3 #ifndef HOSTGROUPSTABLE_H
4 #define HOSTGROUPSTABLE_H
5
6 #include "livestatus/table.hpp"
7
8 using namespace icinga;
9
10 namespace icinga
11 {
12
13 /**
14  * @ingroup livestatus
15  */
16 class HostGroupsTable final : public Table
17 {
18 public:
19         DECLARE_PTR_TYPEDEFS(HostGroupsTable);
20
21         HostGroupsTable();
22
23         static void AddColumns(Table *table, const String& prefix = String(),
24                 const Column::ObjectAccessor& objectAccessor = Column::ObjectAccessor());
25
26         String GetName() const override;
27         String GetPrefix() const override;
28
29 protected:
30         void FetchRows(const AddRowFunction& addRowFn) override;
31
32         static Value NameAccessor(const Value& row);
33         static Value AliasAccessor(const Value& row);
34         static Value NotesAccessor(const Value& row);
35         static Value NotesUrlAccessor(const Value& row);
36         static Value ActionUrlAccessor(const Value& row);
37         static Value MembersAccessor(const Value& row);
38         static Value MembersWithStateAccessor(const Value& row);
39         static Value WorstHostStateAccessor(const Value& row);
40         static Value NumHostsAccessor(const Value& row);
41         static Value NumHostsPendingAccessor(const Value& row);
42         static Value NumHostsUpAccessor(const Value& row);
43         static Value NumHostsDownAccessor(const Value& row);
44         static Value NumHostsUnreachAccessor(const Value& row);
45         static Value NumServicesAccessor(const Value& row);
46         static Value WorstServiceStateAccessor(const Value& row);
47         static Value NumServicesPendingAccessor(const Value& row);
48         static Value NumServicesOkAccessor(const Value& row);
49         static Value NumServicesWarnAccessor(const Value& row);
50         static Value NumServicesCritAccessor(const Value& row);
51         static Value NumServicesUnknownAccessor(const Value& row);
52         static Value WorstServiceHardStateAccessor(const Value& row);
53         static Value NumServicesHardOkAccessor(const Value& row);
54         static Value NumServicesHardWarnAccessor(const Value& row);
55         static Value NumServicesHardCritAccessor(const Value& row);
56         static Value NumServicesHardUnknownAccessor(const Value& row);
57 };
58
59 }
60
61 #endif /* HOSTGROUPSTABLE_H */