public async Task <AccountNameData> getAccountName(string id, string acctnum) { string resultContent = string.Empty; string _ContentType = "application/json"; string authToken = settings.Value.authToken; AccountNameData accountdet = new AccountNameData(); AccountName acctname = new AccountName(); try { ServicePointManager.Expect100Continue = true; ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12; using (var client = new HttpClient()) { client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue(_ContentType)); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", authToken); var result = await client.GetAsync(settings.Value.payStackBaseURL + "bank/resolve?account_number=" + acctnum + "&bank_code=" + id); resultContent = await result.Content.ReadAsStringAsync(); } acctname = JsonHelper.fromJson <AccountName>(resultContent); accountdet = acctname.data; } catch (Exception ex) { //u.LogError(ex, "DAC -- getSBUs: "); } return(accountdet); }
public async Task <AccountNameData> getaccountname(string key, CancellationToken ctx) { AccountNameData names = new AccountNameData(); try { var name = await redis.GetStringAsync(key, ctx); names = JsonHelper.fromJson <AccountNameData>(name); } catch (Exception) { } return(names); }
public async Task setNameAsync(string key, AccountNameData names, CancellationToken cts) { try { var name = await redis.GetStringAsync(key); if (!string.IsNullOrEmpty(name)) { redis.Remove(key); } string value = JsonHelper.toJson(names); await redis.SetStringAsync(key, value, cts); } catch (Exception ex) { } }
public async void setname(string key, AccountNameData names) { try { var name = await redis.GetStringAsync(key); if (!string.IsNullOrEmpty(name)) { redis.Remove(key); } string value = JsonHelper.toJson(names); await redis.SetStringAsync(key, value); } catch (Exception) { } }
public async Task <IActionResult> getAccountName(string id, string acctnum) { Utility utility = new Utility(settings); PaymentError e = new PaymentError(); AccountNameData name = new AccountNameData(); Redis redis = new Redis(settings, cache); string key = id + "_" + acctnum; CancellationTokenSource cts; cts = new CancellationTokenSource(); cts.CancelAfter(settings.Value.redisCancellationToken); // validate request if (!ModelState.IsValid) { var modelErrors = new List <PaymentError>(); var eD = new List <string>(); foreach (var modelState in ModelState.Values) { foreach (var modelError in modelState.Errors) { eD.Add(modelError.ErrorMessage); } } e.error = ((int)HttpStatusCode.BadRequest).ToString(); e.errorDetails = eD; return(BadRequest(e)); } try { name = await redis.getaccountname(key, cts.Token); if (name != null && !string.IsNullOrEmpty(name.account_name)) { return(CreatedAtAction("GetAccountName", name)); } } catch (Exception ex) { Console.Write(ex.ToString()); } try { name = await utility.getAccountName(id, acctnum); } catch (Exception ex) { Console.Write(ex.ToString()); } //Write to Redis try { if (name != null && !string.IsNullOrEmpty(name.account_name)) { await redis.setNameAsync(key, name, cts.Token); } } catch (Exception ex) { Console.Write(ex.Message); } return(CreatedAtAction("GetAccountName", name)); }