public IPooledConnection Create(Uri uri, IConnectionReleaseManager releaseManager, IConnectionListener metricsListener)
            {
                var pooledConnection = _delegate.Create(uri, releaseManager, metricsListener);

                Connections.Enqueue(pooledConnection);
                return(pooledConnection);
            }
            public IPooledConnection Create(Uri uri, IConnectionReleaseManager releaseManager, IDictionary <string, string> routingContext)
            {
                var pooledConnection = _delegate.Create(uri, releaseManager, routingContext);

                Connections.Enqueue(pooledConnection);
                return(pooledConnection);
            }
示例#3
0
 public PooledConnection(IConnection conn, IConnectionReleaseManager releaseManager = null)
     : base(conn)
 {
     _releaseManager = releaseManager;
     // IdleTimer starts to count when the connection is put back to the pool.
     IdleTimer = new StopwatchBasedTimer();
     // LifetimeTimer starts to count once the connection is created.
     LifetimeTimer = new StopwatchBasedTimer();
     LifetimeTimer.Start();
 }
        public PooledConnection(IConnection conn, IConnectionReleaseManager releaseManager = null,
                                IConnectionListener connMetricsListener = null)
            : base(conn)
        {
            _releaseManager = releaseManager;
            // IdleTimer starts to count when the connection is put back to the pool.
            IdleTimer = new StopwatchBasedTimer();
            // LifetimeTimer starts to count once the connection is created.
            LifetimeTimer = new StopwatchBasedTimer();
            LifetimeTimer.Start();

            _connMetricsListener = connMetricsListener;
            if (_connMetricsListener != null)
            {
                _connEvent = new SimpleTimerEvent();
            }
        }
示例#5
0
 public IPooledConnection Create(Uri uri, IConnectionReleaseManager releaseManager, IConnectionListener metricsListener)
 {
     Throw.ArgumentNullException.IfNull(releaseManager, nameof(releaseManager));
     return(new PooledConnection(new SocketConnection(uri, _connectionSettings, _bufferSettings, metricsListener, _logger),
                                 releaseManager, metricsListener));
 }
 public IPooledConnection Create(Uri uri, IConnectionReleaseManager releaseManager, IDictionary <string, string> routingContext)
 {
     Throw.ArgumentNullException.IfNull(releaseManager, nameof(releaseManager));
     return(new PooledConnection(new SocketConnection(uri, _connectionSettings, _bufferSettings, routingContext, _logger),
                                 releaseManager));
 }
 public IPooledConnection Create(Uri uri, IConnectionReleaseManager releaseManager)
 {
     var pooledConnection = _delegate.Create(uri, releaseManager);
     Connections.Enqueue(pooledConnection);
     return pooledConnection;
 }