private void GetReportData(RequestInfo requestInfo, Stream stream) { var requestReport = new GetReportRequest(); var requestsListInfo = requestInfo.Owner; var merchant = requestsListInfo.UserId; var access = requestsListInfo.Access; var requestName = requestInfo.Name; var requestReportList = new GetReportListRequest { Merchant = merchant }; ReportInfo reportInfo = null; var respGetReportList = AmazonWaitBeforeRetryHelper.DoServiceAction( requestsListInfo.ErrorRetryingInfo, ReportGetReportListTrapForThrottling, requestName, access, requestsListInfo.RequestsCounter, () => _Service.GetReportList(requestReportList), "GetReportList"); if (respGetReportList != null && respGetReportList.IsSetGetReportListResult()) { reportInfo = respGetReportList.GetReportListResult.ReportInfo.FirstOrDefault(r => r.ReportRequestId.Equals(requestInfo.Id)); } if (reportInfo != null) { requestReport.Merchant = merchant; requestReport.ReportId = reportInfo.ReportId; requestReport.Report = stream; AmazonWaitBeforeRetryHelper.DoServiceAction( requestsListInfo.ErrorRetryingInfo, ReportGetReportTrapForThrottling, requestName, access, requestsListInfo.RequestsCounter, () => _Service.GetReport(requestReport), "GetReport"); } }
/// <summary> /// returns a list of reports; by default the most recent ten reports, /// regardless of their acknowledgement status. /// /// </summary> /// <param name="service">Instance of MarketplaceWebService service.</param> /// <param name="request">GetReportListRequest request.</param> public static async Task InvokeGetReportList(IMarketplaceWebService service, GetReportListRequest request) { try { var response = await service.GetReportList(request); Console.WriteLine("Service Response"); Console.WriteLine("============================================================================="); Console.WriteLine(); Console.WriteLine(" GetReportListResponse"); if (response.IsSetGetReportListResult()) { Console.WriteLine(" GetReportListResult"); var getReportListResult = response.GetReportListResult; if (getReportListResult.IsSetNextToken()) { Console.WriteLine(" NextToken"); Console.WriteLine(" {0}", getReportListResult.NextToken); } if (getReportListResult.IsSetHasNext()) { Console.WriteLine(" HasNext"); Console.WriteLine(" {0}", getReportListResult.HasNext); } var reportInfoList = getReportListResult.ReportInfo; foreach (var reportInfo in reportInfoList) { Console.WriteLine(" ReportInfo"); if (reportInfo.IsSetReportId()) { Console.WriteLine(" ReportId"); Console.WriteLine(" {0}", reportInfo.ReportId); } if (reportInfo.IsSetReportType()) { Console.WriteLine(" ReportType"); Console.WriteLine(" {0}", reportInfo.ReportType); } if (reportInfo.IsSetReportRequestId()) { Console.WriteLine(" ReportRequestId"); Console.WriteLine(" {0}", reportInfo.ReportRequestId); } if (reportInfo.IsSetAvailableDate()) { Console.WriteLine(" AvailableDate"); Console.WriteLine(" {0}", reportInfo.AvailableDate); } if (reportInfo.IsSetAcknowledged()) { Console.WriteLine(" Acknowledged"); Console.WriteLine(" {0}", reportInfo.Acknowledged); } if (reportInfo.IsSetAcknowledgedDate()) { Console.WriteLine(" AcknowledgedDate"); Console.WriteLine(" {0}", reportInfo.AcknowledgedDate); } } } if (response.IsSetResponseMetadata()) { Console.WriteLine(" ResponseMetadata"); var responseMetadata = response.ResponseMetadata; if (responseMetadata.IsSetRequestId()) { Console.WriteLine(" RequestId"); Console.WriteLine(" {0}", responseMetadata.RequestId); } } Console.WriteLine(" ResponseHeaderMetadata"); Console.WriteLine(" RequestId"); Console.WriteLine(" " + response.ResponseHeaderMetadata.RequestId); Console.WriteLine(" ResponseContext"); Console.WriteLine(" " + response.ResponseHeaderMetadata.ResponseContext); Console.WriteLine(" Timestamp"); Console.WriteLine(" " + response.ResponseHeaderMetadata.Timestamp); } catch (MarketplaceWebServiceException ex) { Console.WriteLine("Caught Exception: " + ex.Message); Console.WriteLine("Response Status Code: " + ex.StatusCode); Console.WriteLine("Error Code: " + ex.ErrorCode); Console.WriteLine("Error Type: " + ex.ErrorType); Console.WriteLine("Request ID: " + ex.RequestId); Console.WriteLine("XML: " + ex.XML); Console.WriteLine("ResponseHeaderMetadata: " + ex.ResponseHeaderMetadata); } }