getTransactionByBlockNumberAndIndex method

Future<EthereumTransaction?> getTransactionByBlockNumberAndIndex(
  1. EthereumDefaultBlock? blockNumber,
  2. int? index
)

Get transaction by block number and index. Returns information about a transaction by block number and transaction index position. A block number as in the default block parameter. Returns see getTransactionByHash.

Implementation

Future<EthereumTransaction?> getTransactionByBlockNumberAndIndex(
    EthereumDefaultBlock? blockNumber, int? index) async {
  if (blockNumber == null) {
    throw ArgumentError.notNull(
        'Ethereum::getTransactionByBlockNumberAndIndex - blockNumber');
  }
  if (index == null) {
    throw ArgumentError.notNull(
        'Ethereum::getTransactionByBlockNumberAndIndex - index');
  }
  final blockNumberString = blockNumber.getSelection();
  final dynamic params = <dynamic>[
    blockNumberString,
    EthereumUtilities.intToHex(index)
  ];
  const method = EthereumRpcMethods.getTransactionByBlockNumberAndIndex;
  final dynamic res = await _client.rpcClient.request(method, params);
  if (res != null && res.containsKey(EthereumConstants.ethResultKey)) {
    return EthereumTransaction.fromMap(res[EthereumConstants.ethResultKey]);
  }
  _client.processError(method, res);
  return null;
}