private void ReloadPurchasability() { purchaseState = PurchaseFeatureState.Loading; purchaseErrorStatus = new AutoyaStatus(); PurchaseRouter.HttpRequestHeaderDelegate httpRequestHeaderDel = (p1, p2, p3, p4) => { return(httpRequestHeaderDelegate(p1, p2, p3, p4)); }; PurchaseRouter.HttpResponseHandlingDelegate httpResponseHandlingDel = (p1, p2, p3, p4, p5, p6, p7) => { Action <string, int, string, AutoyaStatus> p7dash = (q1, q2, q3, status) => { // set autoyaStatus error if exist. if (status.HasError()) { purchaseErrorStatus = status; } p7(q1, q2, q3); }; httpResponseHandlingDelegate( p1, p2, p3, p4, p5, p6, p7dash ); }; _purchaseRouter = new PurchaseRouter( mainthreadDispatcher.Commit, productSourceData => OnLoadProductsResponse(productSourceData), productId => OnTicketRequest(productId), ticketData => OnTicketResponse(ticketData), () => { purchaseState = PurchaseFeatureState.Ready; OnPurchaseReady(); }, (err, code, reason) => { purchaseState = PurchaseFeatureState.ReadyFailed; var cor = OnPurchaseReadyFailed(err, code, reason, purchaseErrorStatus); mainthreadDispatcher.Commit(cor); }, onPaidPurchaseDoneInBackground, httpRequestHeaderDel, httpResponseHandlingDel ); }
private void ReloadPurchasability() { purchaseFeatureState = PurchaseFeatureState.Loading; _purchaseRouter = new PurchaseRouter( mainthreadDispatcher.Commit, productSourceData => { /* * handle received product datas to OverridePoint. */ return(OnLoadProductsResponse(productSourceData)); }, ticketData => { return(OnTicketResponse(ticketData)); }, () => { purchaseReadyRetryCount = 0; purchaseFeatureState = PurchaseFeatureState.Ready; OnPurchaseReady(); }, (err, reason, autoyaStatus) => { purchaseFeatureState = PurchaseFeatureState.Reloading; if (purchaseReadyRetryCount == PurchaseSettings.PEADY_MAX_RETRY_COUNT) { purchaseReadyRetryCount = 0; OnPurchaseReadyFailed(err, reason, autoyaStatus); return; } mainthreadDispatcher.Commit(ReloadPurchaseFeature()); }, httpRequestHeaderDelegate, httpResponseHandlingDelegate ); }