public IConnectionListener CreateConnectionListener(Uri poolUri) { var connectionTimeout = _config.ConnectionTimeout; var connMetrics = new ConnectionMetrics(poolUri, connectionTimeout); var key = connMetrics.UniqueName; return((IConnectionListener)_connMetrics.GetOrAdd(key, connMetrics)); }
public ConnectionMetrics AddConnMetrics(Uri poolUri) { var connectionTimeout = _config.ConnectionTimeout; var connMetrics = new ConnectionMetrics(poolUri, connectionTimeout); var key = connMetrics.UniqueName; _connMetrics.AddOrUpdate(key, connMetrics, (oldKey, oldValue) => connMetrics); return(connMetrics); }
public DriverMetricsManager(Metrics metrics, Uri poolUri, ConnectionPool pool) { Throw.ArgumentNullException.IfNull(metrics, nameof(metrics)); Throw.ArgumentNullException.IfNull(metrics.ConnectionMetrics, nameof(metrics.ConnectionMetrics)); Throw.ArgumentNullException.IfNull(metrics.ConnectionPoolMetrics, nameof(metrics.ConnectionPoolMetrics)); Throw.ArgumentNullException.IfNull(poolUri, nameof(poolUri)); Throw.ArgumentNullException.IfNull(pool, nameof(pool)); _poolMetrics = metrics.AddPoolMetrics(poolUri, pool); _connMetrics = metrics.AddConnMetrics(poolUri); }