30 getLogger(),
"[CbWaitConnection] Waiting for gcalcli connection (timeout: %lds)",
37 RCLCPP_ERROR(
getLogger(),
"[CbWaitConnection] ClGcalcli client not available");
45 RCLCPP_ERROR(
getLogger(),
"[CbWaitConnection] CpGcalcliConnection not available");
50 auto start = std::chrono::steady_clock::now();
54 std::chrono::milliseconds poll_interval{500};
55 const std::chrono::milliseconds max_interval{5000};
57 while (std::chrono::steady_clock::now() < deadline)
62 RCLCPP_INFO(
getLogger(),
"[CbWaitConnection] Shutdown requested");
66 if (connection->checkConnection())
68 RCLCPP_INFO(
getLogger(),
"[CbWaitConnection] Connection established");
74 std::this_thread::sleep_for(poll_interval);
77 poll_interval = std::min(poll_interval * 2, max_interval);
80 RCLCPP_ERROR(
getLogger(),
"[CbWaitConnection] Connection timeout after %lds",
timeout_.count());