in src/DotPulsar/Internal/ConnectionPool.cs [42:63]
public ConnectionPool(
CommandConnect commandConnect,
Uri serviceUrl,
Connector connector,
EncryptionPolicy encryptionPolicy,
TimeSpan closeInactiveConnectionsInterval,
string? listenerName,
TimeSpan keepAliveInterval,
IAuthentication? authentication)
{
_lock = new AsyncLock();
_commandConnect = commandConnect;
_serviceUrl = serviceUrl;
_connector = connector;
_encryptionPolicy = encryptionPolicy;
_listenerName = listenerName;
_connections = new ConcurrentDictionary<PulsarUrl, Connection>();
_cancellationTokenSource = new CancellationTokenSource();
_closeInactiveConnections = CloseInactiveConnections(closeInactiveConnectionsInterval, _cancellationTokenSource.Token);
_keepAliveInterval = keepAliveInterval;
_authentication = authentication;
}