/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */ #ifndef NOTIFICATIONCOMMAND_H #define NOTIFICATIONCOMMAND_H #include "icinga/notificationcommand-ti.hpp" #include "icinga/notification.hpp" namespace icinga { class Notification; /** * A notification command. * * @ingroup icinga */ class NotificationCommand final : public ObjectImpl { public: DECLARE_OBJECT(NotificationCommand); DECLARE_OBJECTNAME(NotificationCommand); static thread_local NotificationCommand::Ptr ExecuteOverride; virtual Dictionary::Ptr Execute(const intrusive_ptr& notification, const User::Ptr& user, const CheckResult::Ptr& cr, const NotificationType& type, const String& author, const String& comment, const Dictionary::Ptr& resolvedMacros = nullptr, bool useResolvedMacros = false); }; } #endif /* NOTIFICATIONCOMMAND_H */