Esempio n. 1
0
            // Not thread-safe due to setting the token if none has been acquired yet.
            public override async Task Upload(UploadProcessor processor, CancellationToken cancellationToken)
            {
                LogData.DpsReportEIUpload.UploadState = UploadState.Uploading;

                try
                {
                    string uploadToken = !string.IsNullOrWhiteSpace(processor.DpsReportUserToken)
                                                ? processor.DpsReportUserToken
                                                : null;
                    var response =
                        await processor.DpsReportUploader.UploadLogAsync(LogData, cancellationToken, uploadToken);

                    if (string.IsNullOrWhiteSpace(processor.DpsReportUserToken))
                    {
                        processor.SetDpsReportUserToken(response.UserToken);
                    }

                    if (response.Error == null)
                    {
                        LogData.DpsReportEIUpload.Url         = response.Permalink;
                        LogData.DpsReportEIUpload.UploadState = UploadState.Uploaded;
                    }
                    else
                    {
                        LogData.DpsReportEIUpload.UploadState     = UploadState.ProcessingError;
                        LogData.DpsReportEIUpload.ProcessingError = response.Error;
                    }
                }
                catch (Exception e)
                {
                    LogData.DpsReportEIUpload.UploadState = UploadState.UploadError;
                    LogData.DpsReportEIUpload.UploadError = e.Message;
                }

                processor.LogCache.CacheLogData(LogData);
            }
Esempio n. 2
0
 public abstract Task Upload(UploadProcessor processor, CancellationToken cancellationToken);