public HttpResponseMessage Post([FromBody] DepositPattern req) { TransactionReceipt result; try { result = TokenFunctionsResults <UInt64, DepositPattern> .InvokeByTransaction(req, FunctionNames.Deposit, Value : req.Value, Gas : req.Gas); } catch (Exception e) { return(Request.CreateErrorResponse(HttpStatusCode.OK, new HttpError(e, true))); } return(Request.CreateResponse(HttpStatusCode.OK, result)); }
public JsonResult Post([FromForm] DepositPattern req) { var user = _userManager.GetUserAsync(HttpContext.User).Result; TransactionReceipt result; try { result = TokenFunctionsResults <UInt64> .InvokeByTransaction(user, FunctionNames.Deposit, Value : req.Value, Gas : req.Gas); } catch (Exception e) { return(Json(e.Message)); } return(Json(result)); }
public static string DepositToContract(DepositPattern req, User user) { user.PublicKey = EthECKey.GetPublicAddress(user.PrivateKey); TransactionReceipt result; try { result = TokenFunctionsResults <UInt64> .InvokeByTransaction(user, FunctionNames.Deposit, Value : req.Value, Gas : req.Gas); } catch (Exception e) { return(JsonConvert.SerializeObject(e.Message)); } return(JsonConvert.SerializeObject(result)); }
public static TransactionReceipt DepositToContract(DepositPattern req, User user, ModelStateDictionary ModelState) { try { user.PublicKey = EthECKey.GetPublicAddress(user.PrivateKey); } catch { ModelState.AddModelError(nameof(user.PublicKey), "Unable to get public key"); return(null); } TransactionReceipt result; //removed try catch result = TokenFunctionsResults <UInt64> .InvokeByTransaction(user, FunctionNames.Deposit, Value : req.Value, Gas : req.Gas); if (result.Status.Value.IsZero) { ModelState.AddModelError(nameof(User), "Operation failed"); } return(result); }
public async Task <IActionResult> DepositToContractForUser([FromBody] DepositDto deposit) { var uid = User.Claims.FirstOrDefault(c => c.Type == Helpers.Constants.Strings.JwtClaimIdentifiers.Id)?.Value; var user = await _userManager.FindByIdAsync(uid); if (user == null) { return(NotFound()); } var depositPattern = new DepositPattern() { Value = deposit.Value }; try { var res = Deposit.DepositToContract(depositPattern, new User() { PrivateKey = user.PrivateKey }, ModelState); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } return(Ok(res)); } catch (Exception e) { ModelState.AddModelError(nameof(DepositDto), e.Message); return(BadRequest(ModelState)); } }