]> granicus.if.org Git - icinga2/commitdiff
Add On{Check,Retry}IntervalChanged event
authorMichael Friedrich <michael.friedrich@netways.de>
Tue, 26 Aug 2014 10:02:55 +0000 (12:02 +0200)
committerMichael Friedrich <michael.friedrich@netways.de>
Tue, 26 Aug 2014 15:11:19 +0000 (17:11 +0200)
refs #5219

lib/icinga/checkable-check.cpp
lib/icinga/checkable.hpp

index 7ec2393c0efc03c6653358cab5ce47f72a196f66..773396f2b5d79a25702bab0ded4c1884c9541d3b 100644 (file)
@@ -43,6 +43,8 @@ boost::signals2::signal<void (const Checkable::Ptr&, bool, const MessageOrigin&)
 boost::signals2::signal<void (const Checkable::Ptr&, bool, const MessageOrigin&)> Checkable::OnEnablePassiveChecksChanged;
 boost::signals2::signal<void (const Checkable::Ptr&, bool, const MessageOrigin&)> Checkable::OnEnableNotificationsChanged;
 boost::signals2::signal<void (const Checkable::Ptr&, bool, const MessageOrigin&)> Checkable::OnEnableFlappingChanged;
+boost::signals2::signal<void (const Checkable::Ptr&, double, const MessageOrigin&)> Checkable::OnCheckIntervalChanged;
+boost::signals2::signal<void (const Checkable::Ptr&, double, const MessageOrigin&)> Checkable::OnRetryIntervalChanged;
 boost::signals2::signal<void (const Checkable::Ptr&, FlappingState)> Checkable::OnFlappingChanged;
 
 CheckCommand::Ptr Checkable::GetCheckCommand(void) const
@@ -87,9 +89,11 @@ double Checkable::GetCheckInterval(void) const
                return GetCheckIntervalRaw();
 }
 
-void Checkable::SetCheckInterval(double interval)
+void Checkable::SetCheckInterval(double interval, const MessageOrigin& origin)
 {
        SetOverrideCheckInterval(interval);
+
+       OnCheckIntervalChanged(GetSelf(), interval, origin);
 }
 
 double Checkable::GetRetryInterval(void) const
@@ -100,9 +104,11 @@ double Checkable::GetRetryInterval(void) const
                return GetRetryIntervalRaw();
 }
 
-void Checkable::SetRetryInterval(double interval)
+void Checkable::SetRetryInterval(double interval, const MessageOrigin& origin)
 {
        SetOverrideRetryInterval(interval);
+
+       OnRetryIntervalChanged(GetSelf(), interval, origin);
 }
 
 void Checkable::SetSchedulingOffset(long offset)
index 7115489be4824455d51816ada6e325fd254968df..d40f2e743b64c5a308b2020a667eb062ca45f4a3 100644 (file)
@@ -104,10 +104,10 @@ public:
        void SetCheckPeriod(const TimePeriod::Ptr& tp);
 
        double GetCheckInterval(void) const;
-       void SetCheckInterval(double interval);
+       void SetCheckInterval(double interval, const MessageOrigin& origin = MessageOrigin());
 
        double GetRetryInterval(void) const;
-       void SetRetryInterval(double interval);
+       void SetRetryInterval(double interval, const MessageOrigin& origin = MessageOrigin());
 
        int GetMaxCheckAttempts(void) const;
        void SetMaxCheckAttempts(int attempts);
@@ -155,6 +155,8 @@ public:
        static boost::signals2::signal<void (const Checkable::Ptr&, bool, const MessageOrigin&)> OnEnablePerfdataChanged;
 
        static boost::signals2::signal<void (const Checkable::Ptr&, bool, const MessageOrigin&)> OnEnableEventHandlerChanged;
+       static boost::signals2::signal<void (const Checkable::Ptr&, double, const MessageOrigin&)> OnCheckIntervalChanged;
+       static boost::signals2::signal<void (const Checkable::Ptr&, double, const MessageOrigin&)> OnRetryIntervalChanged;
 
        static boost::signals2::signal<void (const Checkable::Ptr&, const CheckResult::Ptr&, const MessageOrigin&)> OnNewCheckResult;
        static boost::signals2::signal<void (const Checkable::Ptr&, const CheckResult::Ptr&, StateType, const MessageOrigin&)> OnStateChange;