Esempio n. 1
0
 public void CancelStream()
 {
     if (_tokenSource != null)
     {
         TkApiRequestWrapper.CancelStreamRequest();
         _tokenSource.Cancel();
         _tokenSource.Dispose();
         ConsoleMessageLogger.Instance.Log("Stopping data stream...");
     }
 }
Esempio n. 2
0
        public void StartStreamingData()
        {
            //Task.Run(() => {
            //    List<string> tickers;
            //    using (var db = DbFactory.GetDbSource())
            //    {
            //        //tickers = db.GetTickers();
            //        tickers = WatchListsViewModel.SelectedItem.Tickers.ToList();
            //    }

            //    ConsoleMessageLogger.Instance.Log("Starting data stream...");
            //    TkApiRequestWrapper.ExecuteStreamRequest(tickers, HandleStreamData);
            //});

            _tokenSource = new CancellationTokenSource();
            var ct = _tokenSource.Token;

            var tickers = WatchListsViewModel.SelectedItem.Tickers.ToList();

            var task = Task.Factory.StartNew(() =>
            {
                // Were we already canceled?
                ct.ThrowIfCancellationRequested();

                ConsoleMessageLogger.Instance.Log("Starting data stream with " + tickers.Count + " tickers...");
                TkApiRequestWrapper.ExecuteStreamRequest(tickers, HandleStreamData);
            }, _tokenSource.Token);

            //try
            //{
            //    ConsoleMessageLogger.Instance.Log("Starting data stream...");
            //    task.Wait();

            //    //ConsoleMessageLogger.Instance.Log("Starting data stream...");
            //}
            //catch (Exception ex)
            //{
            //    ConsoleMessageLogger.Instance.Log("Exception in Stream Data: " + ex.Message);
            //}
            //finally
            //{
            //    Console.WriteLine("xyz 123");
            //}

            task.Wait();
            Console.WriteLine("Test 123");
        }
Esempio n. 3
0
        public async Task LoadWatchLists()
        {
            ConsoleMessageLogger.Instance.Log("Loading WatchLists...");

            var watchlists = await TkApiRequestWrapper.GetWatchLists();

            foreach (var w in watchlists)
            {
                WatchLists.Add(new WatchList
                {
                    Name    = w.Name,
                    Tickers = w.Tickers
                });
            }

            SelectedItem = WatchLists.FirstOrDefault();

            ConsoleMessageLogger.Instance.Log("Done loading WatchLists, found " + WatchLists.Count);
        }