1 /* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */ 2 3 #ifndef EVENTCOMMAND_H 4 #define EVENTCOMMAND_H 5 6 #include "icinga/eventcommand-ti.hpp" 7 #include "icinga/checkable.hpp" 8 9 namespace icinga 10 { 11 12 /** 13 * An event handler command. 14 * 15 * @ingroup icinga 16 */ 17 class EventCommand final : public ObjectImpl<EventCommand> 18 { 19 public: 20 DECLARE_OBJECT(EventCommand); 21 DECLARE_OBJECTNAME(EventCommand); 22 23 static thread_local EventCommand::Ptr ExecuteOverride; 24 25 virtual void Execute(const Checkable::Ptr& checkable, 26 const Dictionary::Ptr& resolvedMacros = nullptr, 27 bool useResolvedMacros = false); 28 }; 29 30 } 31 32 #endif /* EVENTCOMMAND_H */ 33