protected void Page_Load(object sender, EventArgs e) { string jsonData = new StreamReader(Request.InputStream).ReadToEnd(); if (string.IsNullOrWhiteSpace(jsonData)) { throw new Exception("Invalid notification call."); } var refreshToken = WebConfigurationManager.AppSettings["RefreshToken"]; var signingKey = WebConfigurationManager.AppSettings["SigningKey"]; var testMode = bool.Parse(WebConfigurationManager.AppSettings["TestMode"]); var client = new OmniKassaApiClient(refreshToken, signingKey, testMode); var announcementResponse = RaboOmniKassaApi.Net.Models.Response.Response.CreateInstance <AnnouncementResponse>(jsonData, new SigningKey(Convert.FromBase64String(signingKey))); bool moreResultsAvailable; do { var response = client.RetrieveAnnouncement(announcementResponse); //... Update the order statuses moreResultsAvailable = response.MoreOrderResultsAvailable; } while (moreResultsAvailable); }
public void TestRetrieveAnnouncement() { var announcementResponse = AnnouncementResponseBuilder.NewInstance(); var merchantOrderStatusResponse = MerchantOrderStatusResponseBuilder.NewInstance(); var merchantOrderStatusResponseAsJson = MerchantOrderStatusResponseBuilder.NewInstanceAsJson(); _connector.Setup(s => s.GetAnnouncementData(announcementResponse)).Returns(merchantOrderStatusResponseAsJson); var result = _client.RetrieveAnnouncement(announcementResponse); Assert.AreEqual(merchantOrderStatusResponse, result); }