public PixivClientService(IProxySetting proxySetting, PixivSetting pixivSetting) { _subscribeDisposable = proxySetting.Proxy .CombineLatest(pixivSetting.ConnectionMode, (proxy, mode) => mode switch { PixivConnectionMode.SystemProxy => new HttpClientHandler { UseProxy = true, Proxy = HttpClient.DefaultProxy }, PixivConnectionMode.ApplicationProxy => new HttpClientHandler { UseProxy = true, Proxy = proxy }, PixivConnectionMode.NoProxy => new HttpClientHandler { UseProxy = false }, PixivConnectionMode.DirectConnect => (HttpMessageHandler) new DirectConnectHandler(), _ => throw new InvalidOperationException($"Unknown enum value {mode}.") })
public ProxyHostedService(ILogger <ProxyHostedService> logger, IOptions <MySetting> options, IUserInput input, IProxySetting proxySetting, MainApp mainApp, TrojanContext trojanContext) { _logger = logger; _proxySetting = proxySetting; _trojanContext = trojanContext; _setting = options.Value ?? throw new Exception("ConfigError"); _action = mainApp.Run; }
public ConsoleUserInput(IProxySetting proxySetting, IOptions <MySetting> options) { _proxySetting = proxySetting; _options = options.Value; }
public MainApp(IOptions <MySetting> options, IProxySetting proxySetting, TrojanContext trojanContext) { _proxySetting = proxySetting; _trojanContext = trojanContext; _options = options.Value; }