示例#1
0
        public virtual void ProcessTaskResult(TaskResultData ResultData)
        {
            try
            {
                if (_dataProcessor != null && _dataProcessor.CheckIfSupported(ResultData))
                {
                    //TODO: create a periodic processing queue to bundle and submit data
                    this.PreConvert(ResultData);

                    var rows = _dataProcessor.Convert(ResultData);

                    foreach (var row in rows)
                    {
                        _dataQueue.Enqueue(row);
                    }

                    if (!_processingStarted)
                    {
                        this.BeginProcessing();
                    }
                }
            } catch (Exception ex)
            {
                this.LogError("Result processing error:");
                this.LogError(ex.Message);
                this.LogError(ex.StackTrace);
            }
        }