public async Task <int> AddClient(string password) { try { return(await _adminManager.AddClient(password)); } catch (Exception ex) { Logger.Error("Error in AddClient method", ex); WebFaultThrower.Throw(ex.Message, HttpStatusCode.InternalServerError); throw; } }
public async Task <string> AddAccount(string clientId) { try { var id = int.Parse(clientId); return(await _adminManager.AddAccount(id)); } catch (Exception ex) { Logger.Error("Error in AddAccount method", ex); WebFaultThrower.Throw(ex.Message, HttpStatusCode.InternalServerError); throw; } }
public async Task TransferReceive(TransferRestModel transferRestModel) { try { var transferReceiver = new TransferReceiveOperationCommand(transferRestModel); await _accountManager.ExecuteOperation(transferReceiver); WebOperationContext.Current.OutgoingResponse.StatusCode = HttpStatusCode.Created; } catch (FaultException ex) { WebFaultThrower.Throw(ex.Message, HttpStatusCode.NotFound); } catch (Exception ex) { log.Error("Error in TransferReceive", ex); WebFaultThrower.Throw("An error occurred, please try again later.", HttpStatusCode.InternalServerError); } }
public object BeforeCall(string operationName, object[] inputs) { try { var user = ConfigurationManager.AppSettings["User"]; var password = ConfigurationManager.AppSettings["Password"]; var auth = WebOperationContext.Current.IncomingRequest.Headers[HttpRequestHeader.Authorization]; if (auth != null) { if (auth.StartsWith("Basic ")) { var cred = Encoding.UTF8.GetString(Convert.FromBase64String(auth.Substring("Basic ".Length))); var parts = cred.Split(':'); if (user == parts[0] && password == parts[1]) { return(null); } } } } catch (Exception e) { log.Error("Error in validation authentication", e); WebFaultThrower.Throw("An error occurred, please try again later.", HttpStatusCode.ServiceUnavailable); } WebOperationContext.Current.OutgoingResponse.ContentType = "application/json"; var wfc = new WebFaultException <ErrorDetailWeb> (new ErrorDetailWeb { Error = "No authorized bank" }, HttpStatusCode.Unauthorized); throw wfc; }
public async Task AddBankCharges(string amount) { try { var value = int.Parse(amount); var bankChargeOperation = new BankChargeOperationCommand(value); await _adminManager.AddBankCharges(bankChargeOperation); } catch (DbUpdateException ex) { var updateException = (UpdateException)ex.InnerException; var sqlException = (SqlException)updateException.InnerException; foreach (SqlError error in sqlException.Errors) { // TODO: Do something with your errors } } catch (Exception ex) { Logger.Error("Error in AddBankCharge method", ex); WebFaultThrower.Throw(ex.Message, HttpStatusCode.InternalServerError); } }