6#include <unordered_map>
9#include <userver/components/component_config.hpp>
10#include <userver/crypto/certificate.hpp>
11#include <userver/crypto/private_key.hpp>
12#include <userver/formats/json_fwd.hpp>
14USERVER_NAMESPACE_BEGIN
18struct EndpointInfo
final {
20 std::string
host =
"localhost";
27 crypto::Certificate cert;
28 crypto::PrivateKey key;
33 std::vector<crypto::Certificate> ca_certs;
34 bool verify_host =
true;
37struct AuthSettings
final {
39 std::string
login =
"guest";
45 std::string
vhost =
"/";
51struct RabbitEndpoints
final {
59struct PoolSettings
final {
80struct ClientSettings
final {
90 ClientSettings(
const components::ComponentConfig& config,
const RabbitEndpoints& rabbit_endpoints);
93 friend class TestsHelper;
97class RabbitEndpointsMulti
final {
99 RabbitEndpointsMulti(
const formats::json::Value& doc);
101 const RabbitEndpoints& Get(
const std::string& name)
const;
104 std::unordered_map<std::string, RabbitEndpoints> endpoints_;