| // 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 |