예제 #1
0
        public async Task RefreshCodalMessagesAsync()
        {
            try
            {
                OnOperationStart?.Invoke(this, 3);

                var new_messages = await CodalData.GetNewMessages();

                OnOperationStep?.Invoke(this, null);
                new_messages.Reverse();

                foreach (var message in new_messages)
                {
                    var instance = WebService.Instruments.FirstOrDefault(x => x.Symbol == message.Symbol);
                    if (instance != null)
                    {
                        message.InsCode = instance.InsCode;
                    }
                }
                OnOperationStep?.Invoke(this, null);

                if (new_messages.Any())
                {
                    await Storage.SaveMessagesAsync(new_messages);
                }
                OnOperationStep?.Invoke(this, null);
                OnOperationCompleted?.Invoke(this, EventArgs.Empty);
            }
            catch (Exception exception)
            {
                _logger.Error("RefreshCodalMessages", exception);
            }
        }
예제 #2
0
 public void Dispose()
 {
     Online?.Dispose();
     WebService?.Dispose();
     CodalData?.Dispose();
 }