Search in sources :

Example 1 with TransferContract

use of org.tron.protos.Protocol.Transaction.Contract.ContractType.TransferContract in project java-tron by tronprotocol.

the class Manager method validateFreq.

void validateFreq(TransactionCapsule trx) throws HighFreqException {
    List<org.tron.protos.Protocol.Transaction.Contract> contracts = trx.getInstance().getRawData().getContractList();
    for (Transaction.Contract contract : contracts) {
        if (contract.getType() == TransferContract || contract.getType() == TransferAssetContract) {
            byte[] address = TransactionCapsule.getOwner(contract);
            AccountCapsule accountCapsule = this.getAccountStore().get(address);
            long balacne = accountCapsule.getBalance();
            long latestOperationTime = accountCapsule.getLatestOperationTime();
            int latstTransNumberInBlock = this.head.getTransactions().size();
            doValidateFreq(balacne, latstTransNumberInBlock, latestOperationTime);
        }
    }
}
Also used : AccountCapsule(org.tron.core.capsule.AccountCapsule) Transaction(org.tron.protos.Protocol.Transaction) TransferContract(org.tron.protos.Protocol.Transaction.Contract.ContractType.TransferContract) TransferAssetContract(org.tron.protos.Protocol.Transaction.Contract.ContractType.TransferAssetContract)

Aggregations

AccountCapsule (org.tron.core.capsule.AccountCapsule)1 Transaction (org.tron.protos.Protocol.Transaction)1 TransferAssetContract (org.tron.protos.Protocol.Transaction.Contract.ContractType.TransferAssetContract)1 TransferContract (org.tron.protos.Protocol.Transaction.Contract.ContractType.TransferContract)1