Example #1
0
        /// <summary>
        /// Immediately attempts to upload reports from Temp Storage to the target <see cref="ReportStorageProvider" />.
        /// In case of failure, pending reports will be written back to temp storage.
        /// </summary>
        /// <param name="report">Report to be uploaded</param>
        /// <param name="provider">Non-Temporary Report Storage Provider</param>
        /// <param name="omitGlobals">Should Global Data Points be ommitted for saved reports? Defaults to false.</param>
        public async Task <Task> UploadAsync(TempStorageProvider tempProvider, ReportStorageProvider provider, bool omitGlobals = false)
        {
            var reports = await tempProvider.ReadAllDataAsync();

            PreProcessReport(reports, omitGlobals);
            try {
                return(provider.SaveToStorageAsync(reports));
            } catch (Exception) {
                return(tempProvider.WriteDataAsync(reports));
            }
        }
Example #2
0
 /// <summary>
 /// Immediately uploads all reports stored in the client to the <see cref="ReportStorageProvider" />.
 /// </summary>
 /// <param name="provider">Non-Temporary Report Storage Provider</param>
 public Task UploadActiveReportsAsync(ReportStorageProvider provider)
 {
     return(UploadAsync(ActiveReports, provider));
 }
Example #3
0
 /// <summary>
 /// Immediately uploads a set of reports to the target <see cref="ReportStorageProvider" />.
 /// </summary>
 /// <param name="report">Report to be uploaded</param>
 /// <param name="provider">Non-Temporary Report Storage Provider</param>
 /// <param name="omitGlobals">Should Global Data Points be ommitted for saved reports? Defaults to false.</param>
 public Task UploadAsync(List <TelemetryReport> reports, ReportStorageProvider provider, bool omitGlobals = false)
 {
     PreProcessReport(reports, omitGlobals);
     return(provider.SaveToStorageAsync(reports));
 }