public string BuildUriWithApiKey( string apiKey, string baseURL, string name, string stringParam, string uriExt) { var configuration = new ClientConfiguration { ApiDataSources = Enumerable .Range(0, 1) .Select(s => new ApiDataSource { Name = "Bar", ApiKey = apiKey, BaseURL = baseURL, EndPoints = new[] { new ApiEndPoint { Name = name, Parameters = stringParam.Split(','), UriExtension = uriExt } } }).ToDictionary(k => k.Name, v => v) }; var result = configuration.BuildUriWithApiKey("Bar", "Test", "R1", "R2").ToString(); return(result); }
public void BuildUriThatFails( string apiSource, string endPoint, string[] parameters) { var configuration = new ClientConfiguration { ApiDataSources = Enumerable .Range(0, 1) .Select(s => new ApiDataSource { Name = "Bar", ApiKey = "abc", BaseURL = "https://google.com", EndPoints = new[] { new ApiEndPoint { Name = "endpoint1", Parameters = new[] { "V1", "V2" }, UriExtension = "Foos" } } }).ToDictionary(k => k.Name, v => v) }; Assert.Throws <UriFormatException>( () => configuration.BuildUriWithApiKey( apiSource, endPoint, parameters)); }
public Task <string> GetDailyTimeSeries(string symbol) { var url = _clientConfiguration.BuildUriWithApiKey("Alphavantage", "TimeSeries", symbol); var grain = _orleansClient.GetGrain <IApiDataReaderGrain>(url.ToString()); return(grain.GetResult()); }