public ProudNetServerService(ILogger <ProudNetServerService> logger, IServiceProvider serviceProvider, IOptions <NetworkOptions> networkOptions, IOptions <ThreadingOptions> threadingOptions, P2PGroupManager groupManager, UdpSocketManager udpSocketManager, ISchedulerService schedulerService, ISessionManagerFactory sessionManagerFactory, Microsoft.Extensions.Logging.ILoggerFactory loggerFactory) { if (logger == null) { throw new ArgumentNullException(nameof(logger)); } _logger = logger; _serviceProvider = serviceProvider; _networkOptions = networkOptions.Value; _threadingOptions = threadingOptions.Value; _groupManager = groupManager; _udpSocketManager = udpSocketManager; _schedulerService = schedulerService; _magicNumberSessionManager = sessionManagerFactory.GetSessionManager <Guid>(SessionManagerType.MagicNumber); _udpSessionManager = sessionManagerFactory.GetSessionManager <uint>(SessionManagerType.UdpId); InternalLoggerFactory.DefaultFactory = loggerFactory; var sessionManager = _serviceProvider.GetRequiredService <ISessionManager>(); sessionManager.Added += SessionManager_OnAdded; sessionManager.Removed += SessionManager_OnRemoved; }
public SchedulerService(IOptions <ThreadingOptions> options) { if (options == null) { throw new ArgumentNullException(nameof(options)); } _options = options.Value; }