9#include <ydb-cpp-sdk/client/coordination/coordination.h>
11USERVER_NAMESPACE_BEGIN
22class CoordinationSession
final {
26 explicit CoordinationSession(NYdb::NCoordination::TSession&& session);
50 bool AcquireSemaphore(std::string_view name,
const NYdb::NCoordination::TAcquireSemaphoreSettings& settings);
71 NYdb::NCoordination::TSession session_;
80class CoordinationClient
final {
84 explicit CoordinationClient(std::shared_ptr<impl::Driver> driver);
91 CoordinationSession
StartSession(std::string_view path,
const NYdb::NCoordination::TSessionSettings& settings);
94 void CreateNode(std::string_view path,
const NYdb::NCoordination::TCreateNodeSettings& settings);
97 void AlterNode(std::string_view path,
const NYdb::NCoordination::TAlterNodeSettings& settings);
112 std::shared_ptr<impl::Driver> driver_;
113 NYdb::NCoordination::TClient client_;