public RelayServerConnectionFactory(ILogger logger, IMaintenanceLoop maintenanceLoop,
                                     IOnPremiseTargetConnectorFactory onPremiseTargetConnectorFactory, IOnPremiseInterceptorFactory onPremiseInterceptorFactory)
 {
     _logger          = logger;
     _maintenanceLoop = maintenanceLoop ?? throw new ArgumentNullException(nameof(maintenanceLoop));
     _onPremiseTargetConnectorFactory = onPremiseTargetConnectorFactory ?? throw new ArgumentNullException(nameof(onPremiseTargetConnectorFactory));
     _onPremiseInterceptorFactory     = onPremiseInterceptorFactory ?? throw new ArgumentNullException(nameof(onPremiseInterceptorFactory));
 }