Search in sources :

Example 41 with NetworkTransactionResponse

use of com.hedera.mirror.test.e2e.acceptance.response.NetworkTransactionResponse in project hedera-mirror-node by hashgraph.

the class ContractClient method executeContract.

public NetworkTransactionResponse executeContract(ContractId contractId, long gas, String functionName, ContractFunctionParameters parameters, Hbar payableAmount) {
    log.debug("Call contract {}'s function {}", contractId, functionName);
    ContractExecuteTransaction contractExecuteTransaction = new ContractExecuteTransaction().setContractId(contractId).setGas(gas).setTransactionMemo(getMemo("Execute contract")).setMaxTransactionFee(Hbar.from(100));
    if (parameters == null) {
        contractExecuteTransaction.setFunction(functionName);
    } else {
        contractExecuteTransaction.setFunction(functionName, parameters);
    }
    if (payableAmount != null) {
        contractExecuteTransaction.setPayableAmount(payableAmount);
    }
    NetworkTransactionResponse networkTransactionResponse = executeTransactionAndRetrieveReceipt(contractExecuteTransaction);
    TransactionRecord transactionRecord = getTransactionRecord(networkTransactionResponse.getTransactionId());
    logContractFunctionResult(functionName, transactionRecord.contractFunctionResult);
    return networkTransactionResponse;
}
Also used : ContractExecuteTransaction(com.hedera.hashgraph.sdk.ContractExecuteTransaction) NetworkTransactionResponse(com.hedera.mirror.test.e2e.acceptance.response.NetworkTransactionResponse) TransactionRecord(com.hedera.hashgraph.sdk.TransactionRecord)

Aggregations

NetworkTransactionResponse (com.hedera.mirror.test.e2e.acceptance.response.NetworkTransactionResponse)41 PublicKey (com.hedera.hashgraph.sdk.PublicKey)3 TopicId (com.hedera.hashgraph.sdk.TopicId)3 AccountId (com.hedera.hashgraph.sdk.AccountId)2 KeyList (com.hedera.hashgraph.sdk.KeyList)2 PrivateKey (com.hedera.hashgraph.sdk.PrivateKey)2 TokenBurnTransaction (com.hedera.hashgraph.sdk.TokenBurnTransaction)2 TokenCreateTransaction (com.hedera.hashgraph.sdk.TokenCreateTransaction)2 TokenId (com.hedera.hashgraph.sdk.TokenId)2 TokenUpdateTransaction (com.hedera.hashgraph.sdk.TokenUpdateTransaction)2 TokenWipeTransaction (com.hedera.hashgraph.sdk.TokenWipeTransaction)2 TopicMessageQuery (com.hedera.hashgraph.sdk.TopicMessageQuery)2 TransactionReceipt (com.hedera.hashgraph.sdk.TransactionReceipt)2 TransactionRecord (com.hedera.hashgraph.sdk.TransactionRecord)2 TransferTransaction (com.hedera.hashgraph.sdk.TransferTransaction)2 ExpandedAccountId (com.hedera.mirror.test.e2e.acceptance.props.ExpandedAccountId)2 Given (io.cucumber.java.en.Given)2 AccountAllowanceApproveTransaction (com.hedera.hashgraph.sdk.AccountAllowanceApproveTransaction)1 AccountCreateTransaction (com.hedera.hashgraph.sdk.AccountCreateTransaction)1 ContractCreateTransaction (com.hedera.hashgraph.sdk.ContractCreateTransaction)1