Exemplo n.º 1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="HeadsService"/> class.
 /// </summary>
 /// <param name="connectedHeads"><see cref="IConnectedHeads"/> for working with connected heads.</param>
 /// <param name="systemClock"><see cref="ISystemClock"/> for time.</param>
 /// <param name="logger"><see cref="ILogger"/> for logging.</param>
 public HeadsService(
     IConnectedHeads connectedHeads,
     ISystemClock systemClock,
     ILogger logger)
 {
     _connectedHeads = connectedHeads;
     _systemClock    = systemClock;
     _logger         = logger;
 }
Exemplo n.º 2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Metrics"/> class.
        /// </summary>
        /// <param name="connectedHeads">The underlying <see cref="IConnectedHeads"/>.</param>
        public Metrics(IConnectedHeads connectedHeads)
        {
            connectedHeads.All.CollectionChanged += (s, e) =>
            {
                switch (e.Action)
                {
                case NotifyCollectionChangedAction.Add: for (var i = 0; i < e.NewItems?.Count; i++)
                    {
                        _headConnects.Inc();
                    }
                    break;

                case NotifyCollectionChangedAction.Remove: for (var i = 0; i < e.OldItems?.Count; i++)
                    {
                        _headConnects.Inc();
                    }
                    break;
                }

                _connectedHeads.Set(connectedHeads.All.Count);
            };
        }
Exemplo n.º 3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ClientFor{T}"/> class.
 /// </summary>
 /// <param name="connectedHeads"><see cref="IConnectedHeads"/> to use for maintaining connection state.</param>
 public ClientFor(IConnectedHeads connectedHeads)
 {
     _connectedHeads = connectedHeads;
 }
Exemplo n.º 4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="HeadsService"/> class.
 /// </summary>
 /// <param name="connectedHeads">The <see cref="IConnectedHeads"/>.</param>
 public HeadsService(IConnectedHeads connectedHeads)
 {
     _connectedHeads = connectedHeads;
 }
Exemplo n.º 5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BootProcedure"/> class.
 /// </summary>
 /// <param name="connectedHeads"><see cref="IConnectedHeads"/>.</param>
 public BootProcedure(IConnectedHeads connectedHeads)
 {
     _connectedHeads = connectedHeads;
 }