public Task <HexBigInteger> EstimateGasAsync(string contractAddress, TFunctionMessage functionMessage = null) { if (functionMessage == null) { functionMessage = new TFunctionMessage(); } SetEncoderContractAddress(contractAddress); var callInput = FunctionMessageEncodingService.CreateCallInput(functionMessage); return(TransactionManager.EstimateGasAsync(callInput)); }
public async Task <string> SignTransactionAsync(string contractAddress, TFunctionMessage functionMessage = null) { if (functionMessage == null) { functionMessage = new TFunctionMessage(); } SetEncoderContractAddress(contractAddress); functionMessage.Gas = await GetOrEstimateMaximumGasAsync(functionMessage, contractAddress).ConfigureAwait(false); var transactionInput = FunctionMessageEncodingService.CreateTransactionInput(functionMessage); return(await TransactionManager.SignTransactionAsync(transactionInput).ConfigureAwait(false)); }
private void InitialiseEncodingService() { FunctionMessageEncodingService = new FunctionMessageEncodingService<TFunctionMessage>(); FunctionMessageEncodingService.DefaultAddressFrom = GetAccountAddressFrom(); }