]> granicus.if.org Git - icinga2/blob - lib/livestatus/commandstable.hpp
Merge pull request #6974 from Icinga/feature/copyright-generic
[icinga2] / lib / livestatus / commandstable.hpp
1 /* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
2
3 #ifndef COMMANDSTABLE_H
4 #define COMMANDSTABLE_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 CommandsTable final : public Table
17 {
18 public:
19         DECLARE_PTR_TYPEDEFS(CommandsTable);
20
21         CommandsTable();
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 LineAccessor(const Value& row);
34         static Value CustomVariableNamesAccessor(const Value& row);
35         static Value CustomVariableValuesAccessor(const Value& row);
36         static Value CustomVariablesAccessor(const Value& row);
37 };
38
39 }
40
41 #endif /* COMMANDSTABLE_H */