blob: e8b026125ebac43b8708f22d519b849deacf074c [file] [edit]
// Copyright 2024 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "heartd/daemon/sheriffs/heartbeat_verifier.h"
#include <base/logging.h>
namespace heartd {
HeartbeatVerifier::HeartbeatVerifier(HeartbeatManager* heartbeat_manager)
: heartbeat_manager_(heartbeat_manager) {}
bool HeartbeatVerifier::HasShiftWork() {
return true;
}
void HeartbeatVerifier::AdjustSchedule() {
schedule_ = base::Minutes(1);
}
void HeartbeatVerifier::ShiftWork() {
heartbeat_manager_->VerifyHeartbeatAndTakeAction();
if (!heartbeat_manager_->AnyHeartbeatTracker()) {
LOG(INFO) << "There is no heartbeat tracker, stop the verifier";
timer_.Stop();
}
}
} // namespace heartd