コード例 #1
0
 /// <summary>
 ///     Upload feedback.
 /// </summary>
 /// <param name="dto">Feedback provided  by the user.</param>
 public void Upload(FeedbackDTO dto)
 {
     if (dto == null)
     {
         throw new ArgumentNullException("dto");
     }
     if (_configuration.QueueReports)
     {
         _feedbackQueue.Add(dto);
     }
     else
     {
         UploadFeedbackNow(dto);
     }
 }
コード例 #2
0
 /// <summary>
 ///     Invoke callbacks
 /// </summary>
 /// <param name="dto">Report to be uploaded.</param>
 /// <returns><c>false</c> if any of the callbacks return <c>false</c>; otherwise <c>true</c></returns>
 /// <remarks>
 ///     <para>
 ///         All callbacks will be invoked, even if one of them returns <c>false</c>.
 ///     </para>
 /// </remarks>
 public void Upload(ErrorReportDTO dto)
 {
     if (dto == null)
     {
         throw new ArgumentNullException("dto");
     }
     if (_configuration.QueueReports)
     {
         _reportQueue.Add(dto);
     }
     else
     {
         UploadReportNow(dto);
     }
 }
コード例 #3
0
        /// <summary>
        ///     Send feedback for a previously submitted error report.
        /// </summary>
        /// <param name="feedback">Feedback to send</param>
        /// <remarks>
        ///     <para>
        ///         Will be queued internally (in memory) if the OS reports that there are no Internet connection available.
        ///     </para>
        /// </remarks>
        public void UploadFeedback(FeedbackDTO feedback)
        {
            if (feedback == null)
            {
                throw new ArgumentNullException("feedback");
            }

            if (!NetworkInterface.GetIsNetworkAvailable() || _queueReportsAccessor())
            {
                _feedbackQueue.Add(feedback);
            }
            else
            {
                TryUploadFeedbackNow(feedback);
            }
        }
コード例 #4
0
        /// <summary>
        ///     Upload the report to the web service.
        /// </summary>
        /// <param name="report">CreateReport to submit</param>
        public void UploadReport(ErrorReportDTO report)
        {
            if (report == null)
            {
                throw new ArgumentNullException("report");
            }

            if (!NetworkInterface.GetIsNetworkAvailable() || _queueReportsAccessor())
            {
                _reportQueue.Add(report);
            }
            else
            {
                TryUploadReportNow(report);
            }
        }