public Dictionary <DateTime, TimeSerie> getDataForShares(string symbol, string tsType, string interval) { Thread thread = new Thread(new ParameterizedThreadStart(getAnotherTimeSeriesTypes)); thread.Start(new string[] { symbol, tsType, interval }); string url = CreateUrl(tsType, symbol, interval, "", apiKey); if (AllTimeSeriesForShares.ContainsKey(url)) { return(AllTimeSeriesForShares[url]); } Dictionary <DateTime, TimeSerie> timeSeries = readDataForShares(url); try { if (timeSeries != null) { AllTimeSeriesForShares.Add(url, timeSeries); } } catch { } return(timeSeries); }
private void getAnotherTimeSeriesTypes(object obj) { string[] parameters = (string[])obj; string symbol = parameters[0]; string tsType = parameters[1]; string interval = parameters[2]; string market = ""; List <string> timeSeriesTypesList = timeSeriesTypes.ToList(); timeSeriesTypesList.Remove(tsType); List <string> intervalTypesList = intervalTypes.ToList(); if (!interval.Equals("")) { intervalTypesList.Remove(interval); } string url; foreach (string tst in timeSeriesTypesList) { if (tst.Equals("INTRADAY")) { foreach (string it in intervalTypesList) { url = CreateUrl(tst, symbol, it, market, apiKey); try { if (!AllTimeSeriesForShares.ContainsKey(url)) { Dictionary <DateTime, TimeSerie> timeSeries = readDataForShares(url); if (timeSeries != null) { AllTimeSeriesForShares.Add(url, timeSeries); } } } catch { } } } else { url = CreateUrl(tst, symbol, interval, market, apiKey); try { if (!AllTimeSeriesForShares.ContainsKey(url)) { Dictionary <DateTime, TimeSerie> timeSeries = readDataForShares(url); if (timeSeries != null) { AllTimeSeriesForShares.Add(url, timeSeries); } } } catch { } } } }