]> granicus.if.org Git - icinga2/blobdiff - lib/icinga/checkable.hpp
Merge pull request #6727 from Icinga/feature/cluster-config-sync-stage
[icinga2] / lib / icinga / checkable.hpp
index 29a5c6db0f3d9c9c4465905f3d9b628b3ec6d1dc..fcfb3f74bdbee0ef1cf36ff5cda682bbd5edbdd2 100644 (file)
@@ -45,6 +45,7 @@ enum SeverityFlag
 {
        SeverityFlagDowntime = 1,
        SeverityFlagAcknowledgement = 2,
+       SeverityFlagHostDown = 4,
        SeverityFlagUnhandled = 8,
        SeverityFlagPending = 16,
        SeverityFlagWarning = 32,
@@ -85,6 +86,8 @@ public:
        void ClearAcknowledgement(const MessageOrigin::Ptr& origin = nullptr);
 
        int GetSeverity() const override;
+       bool GetProblem() const override;
+       bool GetHandled() const override;
 
        /* Checks */
        intrusive_ptr<CheckCommand> GetCheckCommand() const;
@@ -96,7 +99,7 @@ public:
        void UpdateNextCheck(const MessageOrigin::Ptr& origin = nullptr);
 
        bool HasBeenChecked() const;
-       virtual bool IsStateOK(ServiceState state) = 0;
+       virtual bool IsStateOK(ServiceState state) const = 0;
 
        double GetLastCheck() const final;
 
@@ -116,8 +119,8 @@ public:
        static boost::signals2::signal<void (const Checkable::Ptr&, NotificationType, const CheckResult::Ptr&,
                const String&, const String&, const MessageOrigin::Ptr&)> OnNotificationsRequested;
        static boost::signals2::signal<void (const Notification::Ptr&, const Checkable::Ptr&, const User::Ptr&,
-               const NotificationType&, const CheckResult::Ptr&, const String&, const String&, const String&,
-               const MessageOrigin::Ptr&)> OnNotificationSentToUser;
+               const NotificationType&, const CheckResult::Ptr&, const NotificationResult::Ptr&, const String&,
+               const String&, const String&, const MessageOrigin::Ptr&)> OnNotificationSentToUser;
        static boost::signals2::signal<void (const Notification::Ptr&, const Checkable::Ptr&, const std::set<User::Ptr>&,
                const NotificationType&, const CheckResult::Ptr&, const String&,
                const String&, const MessageOrigin::Ptr&)> OnNotificationSentToAllUsers;