// Copyright Verizon Media. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. #pragma once #include #include #include #include #include "model-owner.h" #include "peer-check.h" #include "status-callback.h" #include #include #include #include namespace config::sentinel { class ReportConnectivity : public StatusCallback { public: ReportConnectivity(FRT_RPCRequest *req, int timeout_ms, FRT_Supervisor &orb, ModelOwner &modelOwner); virtual ~ReportConnectivity(); void returnStatus(bool ok) override; private: void finish() const; FRT_RPCRequest *_parentRequest; std::vector> _checks; std::atomic _remaining; }; }