StateFile: migrate from TimeoutMonitor to TimerEvent
This commit is contained in:
parent
dc531b64ae
commit
598bb93cc2
|
@ -42,9 +42,9 @@ constexpr std::chrono::steady_clock::duration StateFile::DEFAULT_INTERVAL;
|
|||
StateFile::StateFile(AllocatedPath &&_path,
|
||||
std::chrono::steady_clock::duration _interval,
|
||||
Partition &_partition, EventLoop &_loop)
|
||||
:TimeoutMonitor(_loop),
|
||||
path(std::move(_path)), path_utf8(path.ToUTF8()),
|
||||
:path(std::move(_path)), path_utf8(path.ToUTF8()),
|
||||
interval(_interval),
|
||||
timer_event(_loop, BIND_THIS_METHOD(OnTimeout)),
|
||||
partition(_partition)
|
||||
{
|
||||
}
|
||||
|
@ -137,8 +137,8 @@ try {
|
|||
void
|
||||
StateFile::CheckModified()
|
||||
{
|
||||
if (!IsActive() && IsModified())
|
||||
Schedule(interval);
|
||||
if (!timer_event.IsActive() && IsModified())
|
||||
timer_event.Schedule(interval);
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
#ifndef MPD_STATE_FILE_HXX
|
||||
#define MPD_STATE_FILE_HXX
|
||||
|
||||
#include "event/TimeoutMonitor.hxx"
|
||||
#include "event/TimerEvent.hxx"
|
||||
#include "fs/AllocatedPath.hxx"
|
||||
#include "Compiler.h"
|
||||
|
||||
|
@ -31,11 +31,12 @@ struct Partition;
|
|||
class OutputStream;
|
||||
class BufferedOutputStream;
|
||||
|
||||
class StateFile final : private TimeoutMonitor {
|
||||
class StateFile final {
|
||||
const AllocatedPath path;
|
||||
const std::string path_utf8;
|
||||
|
||||
const std::chrono::steady_clock::duration interval;
|
||||
TimerEvent timer_event;
|
||||
|
||||
Partition &partition;
|
||||
|
||||
|
@ -76,8 +77,8 @@ private:
|
|||
gcc_pure
|
||||
bool IsModified() const noexcept;
|
||||
|
||||
/* virtual methods from TimeoutMonitor */
|
||||
void OnTimeout() override;
|
||||
/* callback for #timer_event */
|
||||
void OnTimeout();
|
||||
};
|
||||
|
||||
#endif /* STATE_FILE_H */
|
||||
|
|
Loading…
Reference in New Issue