diff options
Diffstat (limited to 'lib/compat/checkresultreader.hpp')
-rw-r--r-- | lib/compat/checkresultreader.hpp | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/lib/compat/checkresultreader.hpp b/lib/compat/checkresultreader.hpp new file mode 100644 index 0000000..6cd28e3 --- /dev/null +++ b/lib/compat/checkresultreader.hpp @@ -0,0 +1,38 @@ +/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */ + +#ifndef CHECKRESULTREADER_H +#define CHECKRESULTREADER_H + +#include "compat/checkresultreader-ti.hpp" +#include "base/timer.hpp" +#include <fstream> + +namespace icinga +{ + +/** + * An Icinga checkresult reader. + * + * @ingroup compat + */ +class CheckResultReader final : public ObjectImpl<CheckResultReader> +{ +public: + DECLARE_OBJECT(CheckResultReader); + DECLARE_OBJECTNAME(CheckResultReader); + + static void StatsFunc(const Dictionary::Ptr& status, const Array::Ptr& perfdata); + +protected: + void Start(bool runtimeCreated) override; + void Stop(bool runtimeRemoved) override; + +private: + Timer::Ptr m_ReadTimer; + void ReadTimerHandler() const; + void ProcessCheckResultFile(const String& path) const; +}; + +} + +#endif /* CHECKRESULTREADER_H */ |