#include "services/service_manager/public/cpp/service_keepalive.h"
#include "base/functional/bind.h"
#include "base/observer_list.h"
#include "base/task/sequenced_task_runner.h"
#include "services/service_manager/public/cpp/service_receiver.h"
namespace service_manager {
class ServiceKeepaliveRefImpl : public ServiceKeepaliveRef { … };
ServiceKeepalive::ServiceKeepalive(ServiceReceiver* receiver,
std::optional<base::TimeDelta> idle_timeout)
: … { … }
ServiceKeepalive::~ServiceKeepalive() = default;
std::unique_ptr<ServiceKeepaliveRef> ServiceKeepalive::CreateRef() { … }
bool ServiceKeepalive::HasNoRefs() { … }
void ServiceKeepalive::AddObserver(Observer* observer) { … }
void ServiceKeepalive::RemoveObserver(Observer* observer) { … }
void ServiceKeepalive::AddRef() { … }
void ServiceKeepalive::ReleaseRef() { … }
void ServiceKeepalive::OnTimerExpired() { … }
}