-
Type:
New Feature
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: Sharding
-
Fully Compatible
-
Sharding 2022-02-07, Sharding 2022-02-21
-
2
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Simple example of what it could look like
ObservedClass {
TimeObserver getTimeObserver() {
return TimeObserver{[&] { return getTimeRunning(); }, [&] { return getTimeRemaining(); }};
}
Duration getTimeRunning();
Duration getTimeRemaining();
}
TimeObserver {
public:
using DurationFunction = std::function<Duration()>;
TimeObserver(DurationFunction timeRunning, DurationFunction timeRemaining);
Duration getTimeRunning() {
return _timeRunning();
}
Duration getTimeRemaining() {
return _timeRemaining();
}
private:
DurationFunction _timeRunning;
DurationFunction _timeRemaining;
}