public SplitSdkApiClient(HTTPHeader header, string baseUrl, long connectionTimeOut, long readTimeout, IMetricsLog metricsLog = null) : base(header, baseUrl, connectionTimeOut, readTimeout, metricsLog) { }
public SdkApiClient(HTTPHeader header, string baseUrl, long connectionTimeOut, long readTimeout, IMetricsLog metricsLog = null) { ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072; var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate }; httpClient = new HttpClient(handler); httpClient.BaseAddress = new Uri(baseUrl); httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", header.authorizationApiKey); httpClient.DefaultRequestHeaders.Add("SplitSDKVersion", header.splitSDKVersion); httpClient.DefaultRequestHeaders.Add("SplitSDKSpecVersion", header.splitSDKSpecVersion); if (!String.IsNullOrEmpty(header.splitSDKMachineName)) { httpClient.DefaultRequestHeaders.Add("SplitSDKMachineName", header.splitSDKMachineName); } if (!String.IsNullOrEmpty(header.splitSDKMachineIP)) { httpClient.DefaultRequestHeaders.Add("SplitSDKMachineIP", header.splitSDKMachineIP); } httpClient.DefaultRequestHeaders.Add("Accept-Encoding", "gzip"); httpClient.DefaultRequestHeaders.Add("Keep-Alive", "true"); httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); //TODO: find a way to store it in sepparated parameters httpClient.Timeout = TimeSpan.FromMilliseconds((connectionTimeOut + readTimeout)); this.metricsLog = metricsLog; }
public Synchronizer(ISplitFetcher splitFetcher, ISelfRefreshingSegmentFetcher segmentFetcher, IImpressionsLog impressionsLog, IEventsLog eventsLog, IMetricsLog metricsLog, IWrapperAdapter wrapperAdapter = null, ISplitLogger log = null) { _splitFetcher = splitFetcher; _segmentFetcher = segmentFetcher; _impressionsLog = impressionsLog; _eventsLog = eventsLog; _metricsLog = metricsLog; _wrapperAdapter = wrapperAdapter ?? new WrapperAdapter(); _log = log ?? WrapperAdapter.GetLogger(typeof(Synchronizer)); }
public SdkApiClient(HTTPHeader header, string baseUrl, long connectionTimeOut, long readTimeout, IMetricsLog metricsLog = null) { #if NET40 || NET45 ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072; #endif var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate }; _httpClient = new HttpClient(handler) { BaseAddress = new Uri(baseUrl), //TODO: find a way to store it in sepparated parameters Timeout = TimeSpan.FromMilliseconds((connectionTimeOut + readTimeout)) }; _httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", header.authorizationApiKey); _httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); _httpClient.DefaultRequestHeaders.Add("SplitSDKVersion", header.splitSDKVersion); _httpClient.DefaultRequestHeaders.Add("SplitSDKSpecVersion", header.splitSDKSpecVersion); _httpClient.DefaultRequestHeaders.Add("Accept-Encoding", "gzip"); _httpClient.DefaultRequestHeaders.Add("Keep-Alive", "true"); if (!string.IsNullOrEmpty(header.splitSDKMachineName) && !header.splitSDKMachineName.Equals(Constans.Unknown)) { _httpClient.DefaultRequestHeaders.Add("SplitSDKMachineName", header.splitSDKMachineName); } if (!string.IsNullOrEmpty(header.splitSDKMachineIP) && !header.splitSDKMachineIP.Equals(Constans.Unknown)) { _httpClient.DefaultRequestHeaders.Add("SplitSDKMachineIP", header.splitSDKMachineIP); } if (header.SplitSDKImpressionsMode != null) { _httpClient.DefaultRequestHeaders.Add("SplitSDKImpressionsMode", header.SplitSDKImpressionsMode.Value.ToString()); } _metricsLog = metricsLog; }
public AsyncMetricsLog(IMetricsSdkApiClient apiClient, IMetricsCache metricsCache, int maxCountCalls = -1, int maxTimeBetweenCalls = -1) { worker = new InMemoryMetricsLog(apiClient, metricsCache, maxCountCalls, maxTimeBetweenCalls); }
public void Start() { worker = new InMemoryMetricsLog(_metricsSdkApiClient, _metricsCache, _maxCountCalls, _maxTimeBetweenCalls); }