conduit 0.6.0
Modern C++23 header-only event-dispatching / event-transport library
Loading...
Searching...
No Matches
Public Attributes | List of all members
conduit::nats::Config Struct Reference

#include <transport.hpp>

Collaboration diagram for conduit::nats::Config:
Collaboration graph
[legend]

Public Attributes

std::string url = "nats://localhost:4222"
 NATS connection URL(s). Comma-separated for clusters.
 
std::string name
 Optional connection name (empty -> ULID-derived).
 
std::optional< std::string > user
 
std::optional< std::string > password
 
std::optional< std::string > token
 
std::optional< std::string > credentials_file
 Path to a JWT / NKey credentials file (e.g. NATS NGS).
 
std::optional< TlsConfigtls
 
std::chrono::seconds connect_timeout {10}
 
std::chrono::seconds reconnect_wait {2}
 
int max_reconnects = 60
 
std::string subject = "conduit.envelope"
 Subject this transport binds to.
 
std::optional< std::string > queue_group
 When set, the transport uses natsConnection_QueueSubscribe so that multiple subscribers form a load-balanced queue group.
 
Format format = Format::Cbor
 Wire format used for both outbound publishes and inbound decoding.
 

Member Data Documentation

◆ connect_timeout

std::chrono::seconds conduit::nats::Config::connect_timeout {10}

◆ credentials_file

std::optional<std::string> conduit::nats::Config::credentials_file

Path to a JWT / NKey credentials file (e.g. NATS NGS).

◆ format

Format conduit::nats::Config::format = Format::Cbor

Wire format used for both outbound publishes and inbound decoding.

◆ max_reconnects

int conduit::nats::Config::max_reconnects = 60

◆ name

std::string conduit::nats::Config::name

Optional connection name (empty -> ULID-derived).

◆ password

std::optional<std::string> conduit::nats::Config::password

◆ queue_group

std::optional<std::string> conduit::nats::Config::queue_group

When set, the transport uses natsConnection_QueueSubscribe so that multiple subscribers form a load-balanced queue group.

◆ reconnect_wait

std::chrono::seconds conduit::nats::Config::reconnect_wait {2}

◆ subject

std::string conduit::nats::Config::subject = "conduit.envelope"

Subject this transport binds to.

Outbound dispatch() publishes onto this subject; the transport subscribes to the same subject at attach. Required — must be a non-empty single subject. Multi-subject routing is done by attaching multiple Transport instances (one per subject), optionally wrapped in FilteredTransport for event-name gating.

◆ tls

std::optional<TlsConfig> conduit::nats::Config::tls

◆ token

std::optional<std::string> conduit::nats::Config::token

◆ url

std::string conduit::nats::Config::url = "nats://localhost:4222"

NATS connection URL(s). Comma-separated for clusters.

◆ user

std::optional<std::string> conduit::nats::Config::user

The documentation for this struct was generated from the following file: