/// <summary>
 /// Creates a new instance of a <see cref="DeadManSwitchRunner"/>
 /// </summary>
 /// <param name="logger">The logger that will be used for diagnostic log messages</param>
 /// <param name="deadManSwitchSessionFactory">The session factory that is capable of starting a new dead man's switch session</param>
 internal DeadManSwitchRunner(IDeadManSwitchLogger <DeadManSwitchRunner> logger,
                              IDeadManSwitchSessionFactory deadManSwitchSessionFactory)
 {
     _deadManSwitchSessionFactory = deadManSwitchSessionFactory ?? throw new ArgumentNullException(nameof(deadManSwitchSessionFactory));
     _logger = logger ?? throw new ArgumentNullException(nameof(logger));
 }
 public CapturingDeadManSwitchSessionFactory(IDeadManSwitchSessionFactory inner)
 {
     _inner = inner ?? throw new ArgumentNullException(nameof(inner));
 }