Search in sources :

Example 6 with TransferList

use of com.hederahashgraph.api.proto.java.TransferList in project hedera-services by hashgraph.

the class RequestBuilder method getHbarCryptoTransferRequestToAlias.

public static Transaction getHbarCryptoTransferRequestToAlias(Long payerAccountNum, Long payerRealmNum, Long payerShardNum, Long nodeAccountNum, Long nodeRealmNum, Long nodeShardNum, long transactionFee, Timestamp timestamp, Duration transactionDuration, boolean generateRecord, String memo, Long senderActNum, Long amountSend, ByteString receivingAlias, Long amountReceived) {
    AccountAmount a1 = AccountAmount.newBuilder().setAccountID(getAccountIdBuild(senderActNum, 0l, 0l)).setAmount(amountSend).build();
    AccountAmount a2 = AccountAmount.newBuilder().setAccountID(getAccountIdBuild(receivingAlias, 0l, 0l)).setAmount(amountReceived).build();
    TransferList transferList = TransferList.newBuilder().addAccountAmounts(a1).addAccountAmounts(a2).build();
    return getCryptoTransferRequest(payerAccountNum, payerRealmNum, payerShardNum, nodeAccountNum, nodeRealmNum, nodeShardNum, transactionFee, timestamp, transactionDuration, generateRecord, memo, transferList);
}
Also used : TokenTransferList(com.hederahashgraph.api.proto.java.TokenTransferList) TransferList(com.hederahashgraph.api.proto.java.TransferList) AccountAmount(com.hederahashgraph.api.proto.java.AccountAmount)

Example 7 with TransferList

use of com.hederahashgraph.api.proto.java.TransferList in project hedera-services by hashgraph.

the class RequestBuilder method getCryptoTransferRequest.

public static Transaction getCryptoTransferRequest(Long payerAccountNum, Long payerRealmNum, Long payerShardNum, Long nodeAccountNum, Long nodeRealmNum, Long nodeShardNum, long transactionFee, Timestamp timestamp, Duration transactionDuration, boolean generateRecord, String memo, Long senderActNum, Long amountSend, Long receiverAcctNum, Long amountReceived) {
    AccountAmount a1 = AccountAmount.newBuilder().setAccountID(getAccountIdBuild(senderActNum, 0l, 0l)).setAmount(amountSend).build();
    AccountAmount a2 = AccountAmount.newBuilder().setAccountID(getAccountIdBuild(receiverAcctNum, 0l, 0l)).setAmount(amountReceived).build();
    TransferList transferList = TransferList.newBuilder().addAccountAmounts(a1).addAccountAmounts(a2).build();
    return getCryptoTransferRequest(payerAccountNum, payerRealmNum, payerShardNum, nodeAccountNum, nodeRealmNum, nodeShardNum, transactionFee, timestamp, transactionDuration, generateRecord, memo, transferList);
}
Also used : TokenTransferList(com.hederahashgraph.api.proto.java.TokenTransferList) TransferList(com.hederahashgraph.api.proto.java.TransferList) AccountAmount(com.hederahashgraph.api.proto.java.AccountAmount)

Example 8 with TransferList

use of com.hederahashgraph.api.proto.java.TransferList in project hedera-services by hashgraph.

the class ContextOptionValidatorTest method allowsReasonableLength.

@Test
void allowsReasonableLength() {
    // setup:
    TransferList wrapper = withAdjustments(a, 2L, b, -3L, d, 1L);
    given(dynamicProperties.maxTransferListSize()).willReturn(3);
    // expect:
    assertTrue(subject.isAcceptableTransfersLength(wrapper));
}
Also used : TransferList(com.hederahashgraph.api.proto.java.TransferList) Test(org.junit.jupiter.api.Test)

Example 9 with TransferList

use of com.hederahashgraph.api.proto.java.TransferList in project hedera-services by hashgraph.

the class FeesAndRatesProvider method defaultPayerSponsored.

private Transaction defaultPayerSponsored(long queryFee) throws Throwable {
    TransferList transfers = asTransferList(tinyBarsFromTo(queryFee, setup.defaultPayer(), setup.defaultNode()));
    CryptoTransferTransactionBody opBody = txns.<CryptoTransferTransactionBody, CryptoTransferTransactionBody.Builder>body(CryptoTransferTransactionBody.class, b -> b.setTransfers(transfers));
    Transaction.Builder txnBuilder = txns.getReadyToSign(b -> b.setCryptoTransfer(opBody));
    return keys.signWithFullPrefixEd25519Keys(txnBuilder, List.of(flattenedMaybeList(registry.getKey(setup.defaultPayerName()))));
}
Also used : Transaction(com.hederahashgraph.api.proto.java.Transaction) TxnUtils.asTransferList(com.hedera.services.bdd.spec.transactions.TxnUtils.asTransferList) TransferList(com.hederahashgraph.api.proto.java.TransferList) CryptoTransferTransactionBody(com.hederahashgraph.api.proto.java.CryptoTransferTransactionBody)

Aggregations

TransferList (com.hederahashgraph.api.proto.java.TransferList)9 AccountAmount (com.hederahashgraph.api.proto.java.AccountAmount)4 TokenTransferList (com.hederahashgraph.api.proto.java.TokenTransferList)3 TxnUtils.asTransferList (com.hedera.services.bdd.spec.transactions.TxnUtils.asTransferList)2 CryptoTransferTransactionBody (com.hederahashgraph.api.proto.java.CryptoTransferTransactionBody)2 ResponseCodeEnum (com.hederahashgraph.api.proto.java.ResponseCodeEnum)2 Transaction (com.hederahashgraph.api.proto.java.Transaction)2 EntityId (com.hedera.mirror.common.domain.entity.EntityId)1 CryptoTransfer (com.hedera.mirror.common.domain.transaction.CryptoTransfer)1 HapiApiSpec (com.hedera.services.bdd.spec.HapiApiSpec)1 OFF (com.hedera.services.bdd.spec.HapiApiSpec.CostSnapshotMode.OFF)1 HapiPropertySource (com.hedera.services.bdd.spec.HapiPropertySource)1 HapiSpecOperation (com.hedera.services.bdd.spec.HapiSpecOperation)1 HapiQueryCheckStateException (com.hedera.services.bdd.spec.exceptions.HapiQueryCheckStateException)1 HapiQueryPrecheckStateException (com.hedera.services.bdd.spec.exceptions.HapiQueryPrecheckStateException)1 Payment (com.hedera.services.bdd.spec.fees.Payment)1 ANSWER_ONLY_QUERY_COST (com.hedera.services.bdd.spec.fees.Payment.Reason.ANSWER_ONLY_QUERY_COST)1 COST_ANSWER_QUERY_COST (com.hedera.services.bdd.spec.fees.Payment.Reason.COST_ANSWER_QUERY_COST)1 ControlForKey (com.hedera.services.bdd.spec.keys.ControlForKey)1 SigMapGenerator (com.hedera.services.bdd.spec.keys.SigMapGenerator)1