Ejemplo n.º 1
0
 public static HttpClientHandler GetHttpClientHandler(ElmahIoOptions options)
 {
     if (DateTime.Now.Subtract(_initTime) > _lifeTime || _instance == null)
     {
         _instance = new HttpClientHandler
         {
             UseProxy = options.WebProxy != null,
             Proxy    = options.WebProxy,
         };
         _initTime = DateTime.Now;
     }
     return(_instance);
 }
Ejemplo n.º 2
0
        public static IElmahioAPI Create(string apiKey, ElmahIoOptions options)
        {
            options = options ?? new ElmahIoOptions();
            var client = new ElmahioAPI(new ApiKeyCredentials(apiKey), HttpClientHandlerFactory.GetHttpClientHandler(options))
            {
                Options = options
            };

            client.HttpClient.Timeout = new TimeSpan(0, 0, 5);
            client.HttpClient.DefaultRequestHeaders.UserAgent.Clear();
            client.HttpClient.DefaultRequestHeaders.UserAgent.Add(new ProductInfoHeaderValue(new ProductHeaderValue("Elmah.Io.Client", $"{typeof(ElmahioAPI).GetTypeInfo().Assembly.GetName().Version}")));
            return(client);
        }