diff --git a/ethereum/api/src/integration-test/java/org/hyperledger/besu/ethereum/api/jsonrpc/JsonRpcResponseUtils.java b/ethereum/api/src/integration-test/java/org/hyperledger/besu/ethereum/api/jsonrpc/JsonRpcResponseUtils.java index 77ca778c546..f7db26acd09 100644 --- a/ethereum/api/src/integration-test/java/org/hyperledger/besu/ethereum/api/jsonrpc/JsonRpcResponseUtils.java +++ b/ethereum/api/src/integration-test/java/org/hyperledger/besu/ethereum/api/jsonrpc/JsonRpcResponseUtils.java @@ -160,7 +160,7 @@ public TransactionResult transaction( when(transaction.getV()).thenReturn(bigInteger(v)); when(transaction.getR()).thenReturn(bigInteger(r)); when(transaction.getS()).thenReturn(bigInteger(s)); - when(transaction.hash()).thenReturn(hash(hash)); + when(transaction.getHash()).thenReturn(hash(hash)); when(transaction.getTo()).thenReturn(Optional.ofNullable(address(toAddress))); when(transaction.getSender()).thenReturn(address(fromAddress)); when(transaction.getPayload()).thenReturn(bytes(input)); diff --git a/ethereum/api/src/integration-test/java/org/hyperledger/besu/ethereum/api/jsonrpc/methods/EthGetFilterChangesIntegrationTest.java b/ethereum/api/src/integration-test/java/org/hyperledger/besu/ethereum/api/jsonrpc/methods/EthGetFilterChangesIntegrationTest.java index ec231477be5..ee85ca3781b 100644 --- a/ethereum/api/src/integration-test/java/org/hyperledger/besu/ethereum/api/jsonrpc/methods/EthGetFilterChangesIntegrationTest.java +++ b/ethereum/api/src/integration-test/java/org/hyperledger/besu/ethereum/api/jsonrpc/methods/EthGetFilterChangesIntegrationTest.java @@ -216,7 +216,7 @@ public void shouldReturnHashesIfNewPendingTransactions() { // We've added one transaction, so there should be one new hash. expected = - new JsonRpcSuccessResponse(null, Lists.newArrayList(String.valueOf(transaction.hash()))); + new JsonRpcSuccessResponse(null, Lists.newArrayList(String.valueOf(transaction.getHash()))); actual = method.response(request); assertThat(actual).isEqualToComparingFieldByField(expected); diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/graphql/GraphQLDataFetchers.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/graphql/GraphQLDataFetchers.java index 20477ac8829..e6e282cfd0e 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/graphql/GraphQLDataFetchers.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/graphql/GraphQLDataFetchers.java @@ -86,7 +86,7 @@ DataFetcher> getSendRawTransactionDataFetcher() { final ValidationResult validationResult = transactionPool.addLocalTransaction(transaction); if (validationResult.isValid()) { - return Optional.of(transaction.hash()); + return Optional.of(transaction.getHash()); } else { throw new GraphQLException(GraphQLError.of(validationResult.getInvalidReason())); } diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/graphql/internal/pojoadapter/TransactionAdapter.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/graphql/internal/pojoadapter/TransactionAdapter.java index 14ffbb62162..0454904a4c0 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/graphql/internal/pojoadapter/TransactionAdapter.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/graphql/internal/pojoadapter/TransactionAdapter.java @@ -41,7 +41,7 @@ public TransactionAdapter(final TransactionWithMetadata transactionWithMetadata) } public Optional getHash() { - return Optional.of(transactionWithMetadata.getTransaction().hash()); + return Optional.of(transactionWithMetadata.getTransaction().getHash()); } public Optional getNonce() { @@ -111,7 +111,7 @@ public Optional getBlock(final DataFetchingEnvironment envir public Optional getStatus(final DataFetchingEnvironment environment) { return Optional.ofNullable(transactionWithMetadata.getTransaction()) - .map(Transaction::hash) + .map(Transaction::getHash) .flatMap(rpt -> getBlockchainQueries(environment).transactionReceiptByTransactionHash(rpt)) .map(TransactionReceiptWithMetadata::getReceipt) .flatMap( @@ -124,14 +124,16 @@ public Optional getStatus(final DataFetchingEnvironment environment) { public Optional getGasUsed(final DataFetchingEnvironment environment) { final BlockchainQueries query = getBlockchainQueries(environment); final Optional rpt = - query.transactionReceiptByTransactionHash(transactionWithMetadata.getTransaction().hash()); + query.transactionReceiptByTransactionHash( + transactionWithMetadata.getTransaction().getHash()); return rpt.map(TransactionReceiptWithMetadata::getGasUsed); } public Optional getCumulativeGasUsed(final DataFetchingEnvironment environment) { final BlockchainQueries query = getBlockchainQueries(environment); final Optional rpt = - query.transactionReceiptByTransactionHash(transactionWithMetadata.getTransaction().hash()); + query.transactionReceiptByTransactionHash( + transactionWithMetadata.getTransaction().getHash()); if (rpt.isPresent()) { final TransactionReceipt receipt = rpt.get().getReceipt(); return Optional.of(receipt.getCumulativeGasUsed()); @@ -164,7 +166,7 @@ public Optional getCreatedContract(final DataFetchingEnvironment public List getLogs(final DataFetchingEnvironment environment) { final BlockchainQueries query = getBlockchainQueries(environment); - final Hash hash = transactionWithMetadata.getTransaction().hash(); + final Hash hash = transactionWithMetadata.getTransaction().getHash(); final Optional tranRpt = query.transactionReceiptByTransactionHash(hash); final List results = new ArrayList<>(); diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/filter/FilterManager.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/filter/FilterManager.java index e84041bfcc3..f832cb6b965 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/filter/FilterManager.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/filter/FilterManager.java @@ -163,7 +163,7 @@ void recordPendingTransactionEvent(final Transaction transaction) { pendingTransactionFilters.forEach( (filter) -> { synchronized (filter) { - filter.addTransactionHash(transaction.hash()); + filter.addTransactionHash(transaction.getHash()); } }); } diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/DebugStorageRangeAt.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/DebugStorageRangeAt.java index 3274251bd57..662be769387 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/DebugStorageRangeAt.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/DebugStorageRangeAt.java @@ -105,7 +105,7 @@ public JsonRpcResponse response(final JsonRpcRequest request) { .get() .afterTransactionInBlock( blockHash, - transactionWithMetadata.getTransaction().hash(), + transactionWithMetadata.getTransaction().getHash(), (transaction, blockHeader, blockchain, worldState, transactionProcessor) -> extractStorageAt(request, accountAddress, startKey, limit, worldState)) .orElseGet(() -> emptyResponse(request)))) diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/EthSendRawTransaction.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/EthSendRawTransaction.java index 20f3032224b..d3d15a19bda 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/EthSendRawTransaction.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/EthSendRawTransaction.java @@ -82,7 +82,7 @@ public JsonRpcResponse response(final JsonRpcRequest request) { final ValidationResult validationResult = transactionPool.get().addLocalTransaction(transaction); return validationResult.either( - () -> new JsonRpcSuccessResponse(request.getId(), transaction.hash().toString()), + () -> new JsonRpcSuccessResponse(request.getId(), transaction.getHash().toString()), errorReason -> sendEmptyHashOnInvalidBlock ? new JsonRpcSuccessResponse(request.getId(), Hash.EMPTY.toString()) diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/TraceReplayBlockTransactions.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/TraceReplayBlockTransactions.java index b3b74b08135..f487a4a9c37 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/TraceReplayBlockTransactions.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/TraceReplayBlockTransactions.java @@ -123,7 +123,7 @@ private JsonNode formatTraces( .ifPresent( transactionTrace -> { resultNode.put( - "transactionHash", transactionTrace.getTransaction().hash().getHexString()); + "transactionHash", transactionTrace.getTransaction().getHash().getHexString()); resultNode.put("output", transactionTrace.getResult().getOutput().toString()); }); resultNode.put("stateDiff", (String) null); diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/privacy/methods/eea/EeaSendRawTransaction.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/privacy/methods/eea/EeaSendRawTransaction.java index b243a717202..2cf3ed07d02 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/privacy/methods/eea/EeaSendRawTransaction.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/privacy/methods/eea/EeaSendRawTransaction.java @@ -83,7 +83,7 @@ public JsonRpcResponse response(final JsonRpcRequest request) { .either( () -> new JsonRpcSuccessResponse( - request.getId(), privacyMarkerTransaction.hash().toString()), + request.getId(), privacyMarkerTransaction.getHash().toString()), errorReason -> new JsonRpcErrorResponse( request.getId(), diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/processor/BlockReplay.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/processor/BlockReplay.java index 7298620dd45..b207cdde750 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/processor/BlockReplay.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/processor/BlockReplay.java @@ -80,7 +80,7 @@ public Optional beforeTransactionInBlock( (body, header, blockchain, mutableWorldState, transactionProcessor) -> { final BlockHashLookup blockHashLookup = new BlockHashLookup(header, blockchain); for (final Transaction transaction : body.getTransactions()) { - if (transaction.hash().equals(transactionHash)) { + if (transaction.getHash().equals(transactionHash)) { return Optional.of( action.performAction( transaction, header, blockchain, mutableWorldState, transactionProcessor)); diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/TransactionCompleteResult.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/TransactionCompleteResult.java index c1fbff9a0e4..7285d611983 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/TransactionCompleteResult.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/TransactionCompleteResult.java @@ -61,7 +61,7 @@ public TransactionCompleteResult(final TransactionWithMetadata tx) { this.from = transaction.getSender().toString(); this.gas = Quantity.create(transaction.getGasLimit()); this.gasPrice = Quantity.create(transaction.getGasPrice()); - this.hash = transaction.hash().toString(); + this.hash = transaction.getHash().toString(); this.input = transaction.getPayload().toString(); this.nonce = Quantity.create(transaction.getNonce()); this.to = transaction.getTo().map(BytesValue::toString).orElse(null); diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/TransactionPendingResult.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/TransactionPendingResult.java index 005bf4a9800..fc2a8da9dce 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/TransactionPendingResult.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/TransactionPendingResult.java @@ -54,7 +54,7 @@ public TransactionPendingResult(final Transaction transaction) { this.from = transaction.getSender().toString(); this.gas = Quantity.create(transaction.getGasLimit()); this.gasPrice = Quantity.create(transaction.getGasPrice()); - this.hash = transaction.hash().toString(); + this.hash = transaction.getHash().toString(); this.input = transaction.getPayload().toString(); this.nonce = Quantity.create(transaction.getNonce()); this.to = transaction.getTo().map(BytesValue::toString).orElse(null); diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/TransactionReceiptResult.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/TransactionReceiptResult.java index 941dd25d178..120a4626c53 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/TransactionReceiptResult.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/results/TransactionReceiptResult.java @@ -76,12 +76,12 @@ public TransactionReceiptResult(final TransactionReceiptWithMetadata receiptWith logReceipts( receipt.getLogs(), receiptWithMetadata.getBlockNumber(), - receiptWithMetadata.getTransaction().hash(), + receiptWithMetadata.getTransaction().getHash(), receiptWithMetadata.getBlockHash(), receiptWithMetadata.getTransactionIndex()); this.logsBloom = receipt.getBloomFilter().toString(); this.to = receiptWithMetadata.getTransaction().getTo().map(BytesValue::toString).orElse(null); - this.transactionHash = receiptWithMetadata.getTransaction().hash().toString(); + this.transactionHash = receiptWithMetadata.getTransaction().getHash().toString(); this.transactionIndex = Quantity.create(receiptWithMetadata.getTransactionIndex()); this.revertReason = receipt.getRevertReason().map(BytesValue::toString).orElse(null); } diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/logs/LogsSubscriptionService.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/logs/LogsSubscriptionService.java index eac6cec1873..38adb86e3da 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/logs/LogsSubscriptionService.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/logs/LogsSubscriptionService.java @@ -49,7 +49,7 @@ public void onBlockAdded(final BlockAddedEvent event, final Blockchain blockchai } event.getAddedTransactions().stream() - .map(tx -> blockchainQueries.transactionReceiptByTransactionHash(tx.hash())) + .map(tx -> blockchainQueries.transactionReceiptByTransactionHash(tx.getHash())) .filter(Optional::isPresent) .map(Optional::get) .forEachOrdered( @@ -59,7 +59,7 @@ public void onBlockAdded(final BlockAddedEvent event, final Blockchain blockchai }); event.getRemovedTransactions().stream() - .map(tx -> blockchainQueries.transactionReceiptByTransactionHash(tx.hash())) + .map(tx -> blockchainQueries.transactionReceiptByTransactionHash(tx.getHash())) .filter(Optional::isPresent) .map(Optional::get) .forEachOrdered( diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionDetailResult.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionDetailResult.java index e8a5e12166e..fec1e7974c3 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionDetailResult.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionDetailResult.java @@ -52,7 +52,7 @@ public PendingTransactionDetailResult(final Transaction tx) { this.from = tx.getSender().toString(); this.gas = Quantity.create(tx.getGasLimit()); this.gasPrice = Quantity.create(tx.getGasPrice()); - this.hash = tx.hash().toString(); + this.hash = tx.getHash().toString(); this.input = tx.getPayload().toString(); this.nonce = Quantity.create(tx.getNonce()); this.to = tx.getTo().map(BytesValue::toString).orElse(null); diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionDroppedSubscriptionService.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionDroppedSubscriptionService.java index 3cf15f4cb5f..7b97b9b1a07 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionDroppedSubscriptionService.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionDroppedSubscriptionService.java @@ -35,7 +35,7 @@ public PendingTransactionDroppedSubscriptionService( @Override public void onTransactionDropped(final Transaction transaction) { - notifySubscribers(transaction.hash()); + notifySubscribers(transaction.getHash()); } private void notifySubscribers(final Hash pendingTransaction) { diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionSubscriptionService.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionSubscriptionService.java index 961fa066e64..26ce0ad10ab 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionSubscriptionService.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionSubscriptionService.java @@ -39,7 +39,7 @@ private void notifySubscribers(final Transaction pendingTransaction) { final List subscriptions = pendingTransactionSubscriptions(); final PendingTransactionResult hashResult = - new PendingTransactionResult(pendingTransaction.hash()); + new PendingTransactionResult(pendingTransaction.getHash()); final PendingTransactionDetailResult detailResult = new PendingTransactionDetailResult(pendingTransaction); for (final Subscription subscription : subscriptions) { diff --git a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/query/BlockchainQueries.java b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/query/BlockchainQueries.java index 6400061f3bc..7b86891fbc0 100644 --- a/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/query/BlockchainQueries.java +++ b/ethereum/api/src/main/java/org/hyperledger/besu/ethereum/api/query/BlockchainQueries.java @@ -320,7 +320,7 @@ public Optional> blockByHashWithTxHashes( (td) -> { final List txs = body.getTransactions().stream() - .map(Transaction::hash) + .map(Transaction::getHash) .collect(Collectors.toList()); final List ommers = body.getOmmers().stream() @@ -566,7 +566,7 @@ private List generateLogWithMetadata( logIndex, number, blockhash, - transaction.get(transactionIndex).hash(), + transaction.get(transactionIndex).getHash(), transactionIndex, receipts.get(transactionIndex).getLogs().get(logIndex).getLogger(), receipts.get(transactionIndex).getLogs().get(logIndex).getData(), diff --git a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/JsonRpcHttpServiceTest.java b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/JsonRpcHttpServiceTest.java index a923434c9ba..431999f3a3d 100644 --- a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/JsonRpcHttpServiceTest.java +++ b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/JsonRpcHttpServiceTest.java @@ -1750,7 +1750,7 @@ private void verifyBlockResult( final Transaction transaction = block.getBody().getTransactions().get(i); if (shouldTransactionsBeHashed) { assertThat(Hash.fromHexString(transactionsResult.getString(i))) - .isEqualTo(transaction.hash()); + .isEqualTo(transaction.getHash()); } else { final JsonObject transactionResult = transactionsResult.getJsonObject(i); final Integer expectedIndex = i; @@ -1768,7 +1768,7 @@ private void assertTransactionResultMatchesTransaction( final Integer index, final Hash blockHash, final Long blockNumber) { - assertThat(Hash.fromHexString(result.getString("hash"))).isEqualTo(transaction.hash()); + assertThat(Hash.fromHexString(result.getString("hash"))).isEqualTo(transaction.getHash()); assertThat(Long.decode(result.getString("nonce"))).isEqualByComparingTo(transaction.getNonce()); if (blockHash != null) { assertThat(Hash.fromHexString(result.getString("blockHash"))).isEqualTo(blockHash); @@ -1899,7 +1899,7 @@ public BlockWithMetadata blockWithMetadataAndTxHashes(final Block bl final List txs = block.getBody().getTransactions().stream() - .map(Transaction::hash) + .map(Transaction::getHash) .collect(Collectors.toList()); final List ommers = block.getBody().getOmmers().stream().map(BlockHeader::getHash).collect(Collectors.toList()); diff --git a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/SimpleTestTransactionBuilder.java b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/SimpleTestTransactionBuilder.java index 23070bc6437..35c2f2faa88 100644 --- a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/SimpleTestTransactionBuilder.java +++ b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/SimpleTestTransactionBuilder.java @@ -59,7 +59,7 @@ public static Transaction transaction( final String s) { final Transaction transaction = mock(Transaction.class); - when(transaction.hash()).thenReturn(blockHash); + when(transaction.getHash()).thenReturn(blockHash); when(transaction.getGasPrice()).thenReturn(Wei.fromHexString(gasPrice)); when(transaction.getNonce()).thenReturn(unsignedLong(nonce)); when(transaction.getV()).thenReturn(bigInteger(v)); diff --git a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/filter/EthJsonRpcHttpServiceTest.java b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/filter/EthJsonRpcHttpServiceTest.java index 9c5f25a150c..252c0abac87 100644 --- a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/filter/EthJsonRpcHttpServiceTest.java +++ b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/filter/EthJsonRpcHttpServiceTest.java @@ -38,7 +38,7 @@ private Hash recordPendingTransaction(final int blockNumber, final int transacti final Block block = blockchainSetupUtil.getBlock(blockNumber); final Transaction transaction = block.getBody().getTransactions().get(transactionIndex); filterManager.recordPendingTransactionEvent(transaction); - return transaction.hash(); + return transaction.getHash(); } @Test diff --git a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/filter/FilterManagerTest.java b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/filter/FilterManagerTest.java index a2c08af51ac..500abbe188e 100644 --- a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/filter/FilterManagerTest.java +++ b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/filter/FilterManagerTest.java @@ -239,6 +239,6 @@ private Hash appendBlockToBlockchain() { private Hash receivePendingTransaction() { final Transaction transaction = blockGenerator.transaction(); filterManager.recordPendingTransactionEvent(transaction); - return transaction.hash(); + return transaction.getHash(); } } diff --git a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/DebugStorageRangeAtTest.java b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/DebugStorageRangeAtTest.java index 98067b9adb5..ed8920d283b 100644 --- a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/DebugStorageRangeAtTest.java +++ b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/methods/DebugStorageRangeAtTest.java @@ -77,7 +77,7 @@ public class DebugStorageRangeAtTest { @Before public void setUp() { - when(transaction.hash()).thenReturn(transactionHash); + when(transaction.getHash()).thenReturn(transactionHash); } @Test diff --git a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/privacy/methods/priv/PrivGetTransactionReceiptTest.java b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/privacy/methods/priv/PrivGetTransactionReceiptTest.java index 6018defac13..f44fc1bdded 100644 --- a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/privacy/methods/priv/PrivGetTransactionReceiptTest.java +++ b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/privacy/methods/priv/PrivGetTransactionReceiptTest.java @@ -164,7 +164,7 @@ public void setUp() { public void returnReceiptIfTransactionExists() { final PrivGetTransactionReceipt privGetTransactionReceipt = new PrivGetTransactionReceipt(blockchainQueries, enclave, parameters, privacyParameters); - final Object[] params = new Object[] {transaction.hash()}; + final Object[] params = new Object[] {transaction.getHash()}; final JsonRpcRequest request = new JsonRpcRequest("1", "priv_getTransactionReceipt", params); final JsonRpcSuccessResponse response = @@ -183,7 +183,7 @@ public void enclavePayloadNotFoundResultsInSuccessButNullResponse() { final PrivGetTransactionReceipt privGetTransactionReceipt = new PrivGetTransactionReceipt( blockchainQueries, failingEnclave, parameters, privacyParameters); - final Object[] params = new Object[] {transaction.hash()}; + final Object[] params = new Object[] {transaction.getHash()}; final JsonRpcRequest request = new JsonRpcRequest("1", "priv_getTransactionReceipt", params); final JsonRpcSuccessResponse response = @@ -200,7 +200,7 @@ public void markerTransactionNotAvailableResultsInNullResponse() { final PrivGetTransactionReceipt privGetTransactionReceipt = new PrivGetTransactionReceipt(blockchainQueries, enclave, parameters, privacyParameters); - final Object[] params = new Object[] {transaction.hash()}; + final Object[] params = new Object[] {transaction.getHash()}; final JsonRpcRequest request = new JsonRpcRequest("1", "priv_getTransactionReceipt", params); final JsonRpcSuccessResponse response = @@ -216,7 +216,7 @@ public void enclaveConnectionIssueThrowsRuntimeException() { final PrivGetTransactionReceipt privGetTransactionReceipt = new PrivGetTransactionReceipt( blockchainQueries, failingEnclave, parameters, privacyParameters); - final Object[] params = new Object[] {transaction.hash()}; + final Object[] params = new Object[] {transaction.getHash()}; final JsonRpcRequest request = new JsonRpcRequest("1", "priv_getTransactionReceipt", params); final Throwable t = catchThrowable(() -> privGetTransactionReceipt.response(request)); diff --git a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/processor/TransactionTracerTest.java b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/processor/TransactionTracerTest.java index aa1470ae651..ffb139dc9cd 100644 --- a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/processor/TransactionTracerTest.java +++ b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/internal/processor/TransactionTracerTest.java @@ -92,8 +92,8 @@ public class TransactionTracerTest { public void setUp() throws Exception { transactionTracer = new TransactionTracer(new BlockReplay(protocolSchedule, blockchain, worldStateArchive)); - when(transaction.hash()).thenReturn(transactionHash); - when(otherTransaction.hash()).thenReturn(otherTransactionHash); + when(transaction.getHash()).thenReturn(transactionHash); + when(otherTransaction.getHash()).thenReturn(otherTransactionHash); when(blockHeader.getNumber()).thenReturn(12L); when(blockHeader.getHash()).thenReturn(blockHash); when(blockHeader.getParentHash()).thenReturn(previousBlockHash); diff --git a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/blockheaders/NewBlockHeadersSubscriptionServiceTest.java b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/blockheaders/NewBlockHeadersSubscriptionServiceTest.java index 2d3b596a1a9..dde8e560b58 100644 --- a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/blockheaders/NewBlockHeadersSubscriptionServiceTest.java +++ b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/blockheaders/NewBlockHeadersSubscriptionServiceTest.java @@ -199,7 +199,7 @@ private List transactionsWithMetadata() { private List transactionsWithHashOnly() { final List hashes = new ArrayList<>(); for (final TransactionWithMetadata transactionWithMetadata : transactionsWithMetadata()) { - hashes.add(transactionWithMetadata.getTransaction().hash()); + hashes.add(transactionWithMetadata.getTransaction().getHash()); } return hashes; } diff --git a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/logs/LogsSubscriptionServiceTest.java b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/logs/LogsSubscriptionServiceTest.java index 7969584b817..4f0caf009f6 100644 --- a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/logs/LogsSubscriptionServiceTest.java +++ b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/logs/LogsSubscriptionServiceTest.java @@ -205,13 +205,13 @@ private TransactionReceiptWithMetadata createTransactionWithLog( TransactionReceiptWithMetadata.create( transactionReceipt, transaction, - transaction.hash(), + transaction.getHash(), 0, 1L, blockHeader.getHash(), blockHeader.getNumber()); - when(blockchainQueries.transactionReceiptByTransactionHash(eq(transaction.hash()))) + when(blockchainQueries.transactionReceiptByTransactionHash(eq(transaction.getHash()))) .thenReturn(Optional.of(transactionReceiptWithMetadata)); return transactionReceiptWithMetadata; diff --git a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionDroppedSubscriptionServiceTest.java b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionDroppedSubscriptionServiceTest.java index 4779633339d..d9ad8212fe2 100644 --- a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionDroppedSubscriptionServiceTest.java +++ b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/websocket/subscription/pending/PendingTransactionDroppedSubscriptionServiceTest.java @@ -97,7 +97,7 @@ private Map messages(final Hash result, final long... subscriptionId private Transaction transaction(final Hash hash) { final Transaction tx = mock(Transaction.class); - when(tx.hash()).thenReturn(hash); + when(tx.getHash()).thenReturn(hash); return tx; } diff --git a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/query/BlockchainQueriesTest.java b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/query/BlockchainQueriesTest.java index e03818c247c..4ff416d8db0 100644 --- a/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/query/BlockchainQueriesTest.java +++ b/ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/query/BlockchainQueriesTest.java @@ -512,7 +512,7 @@ private void assertBlockMatchesResultWithTxHashes( for (int i = 0; i < result.getTransactions().size(); i++) { final Hash txResult = result.getTransactions().get(i); final Transaction actualTx = targetBlock.getBody().getTransactions().get(i); - assertThat(txResult).isEqualByComparingTo(actualTx.hash()); + assertThat(txResult).isEqualByComparingTo(actualTx.getHash()); } } diff --git a/ethereum/blockcreation/src/test/java/org/hyperledger/besu/ethereum/blockcreation/BlockTransactionSelectorTest.java b/ethereum/blockcreation/src/test/java/org/hyperledger/besu/ethereum/blockcreation/BlockTransactionSelectorTest.java index 342f7b75086..6ec4ea1f007 100644 --- a/ethereum/blockcreation/src/test/java/org/hyperledger/besu/ethereum/blockcreation/BlockTransactionSelectorTest.java +++ b/ethereum/blockcreation/src/test/java/org/hyperledger/besu/ethereum/blockcreation/BlockTransactionSelectorTest.java @@ -471,9 +471,9 @@ public void shouldDiscardTransactionsThatFailValidation() { selector.buildTransactionListForBlock(); - Assertions.assertThat(pendingTransactions.getTransactionByHash(validTransaction.hash())) + Assertions.assertThat(pendingTransactions.getTransactionByHash(validTransaction.getHash())) .isPresent(); - Assertions.assertThat(pendingTransactions.getTransactionByHash(invalidTransaction.hash())) + Assertions.assertThat(pendingTransactions.getTransactionByHash(invalidTransaction.getHash())) .isNotPresent(); } @@ -517,7 +517,7 @@ public void transactionWithIncorrectNonceRemainsInPoolAndNotSelected() { final BlockTransactionSelector.TransactionSelectionResults results = selector.buildTransactionListForBlock(); - Assertions.assertThat(pendingTransactions.getTransactionByHash(futureTransaction.hash())) + Assertions.assertThat(pendingTransactions.getTransactionByHash(futureTransaction.getHash())) .isPresent(); assertThat(results.getTransactions().size()).isEqualTo(0); } diff --git a/ethereum/core/src/main/java/org/hyperledger/besu/ethereum/chain/DefaultBlockchain.java b/ethereum/core/src/main/java/org/hyperledger/besu/ethereum/chain/DefaultBlockchain.java index 0ed1b617681..9bb8c1f05a9 100644 --- a/ethereum/core/src/main/java/org/hyperledger/besu/ethereum/chain/DefaultBlockchain.java +++ b/ethereum/core/src/main/java/org/hyperledger/besu/ethereum/chain/DefaultBlockchain.java @@ -435,7 +435,7 @@ void updateCacheForNewCanonicalHead(final Block block, final UInt256 uInt256) { private static void indexTransactionForBlock( final BlockchainStorage.Updater updater, final Hash hash, final List txs) { for (int i = 0; i < txs.size(); i++) { - final Hash txHash = txs.get(i).hash(); + final Hash txHash = txs.get(i).getHash(); final TransactionLocation loc = new TransactionLocation(hash, i); updater.putTransactionLocation(txHash, loc); } @@ -444,7 +444,7 @@ private static void indexTransactionForBlock( private static void clearIndexedTransactionsForBlock( final BlockchainStorage.Updater updater, final List txs) { for (final Transaction tx : txs) { - updater.removeTransactionLocation(tx.hash()); + updater.removeTransactionLocation(tx.getHash()); } } diff --git a/ethereum/core/src/main/java/org/hyperledger/besu/ethereum/core/Transaction.java b/ethereum/core/src/main/java/org/hyperledger/besu/ethereum/core/Transaction.java index ef48ca293a4..86323de9489 100644 --- a/ethereum/core/src/main/java/org/hyperledger/besu/ethereum/core/Transaction.java +++ b/ethereum/core/src/main/java/org/hyperledger/besu/ethereum/core/Transaction.java @@ -335,7 +335,8 @@ public BigInteger getV() { * * @return the transaction hash */ - public Hash hash() { + @Override + public Hash getHash() { if (hash == null) { final BytesValue rlp = RLP.encode(this::writeTo); hash = Hash.hash(rlp); diff --git a/ethereum/core/src/test/java/org/hyperledger/besu/ethereum/chain/DefaultBlockchainTest.java b/ethereum/core/src/test/java/org/hyperledger/besu/ethereum/chain/DefaultBlockchainTest.java index 16782898418..51259868973 100644 --- a/ethereum/core/src/test/java/org/hyperledger/besu/ethereum/chain/DefaultBlockchainTest.java +++ b/ethereum/core/src/test/java/org/hyperledger/besu/ethereum/chain/DefaultBlockchainTest.java @@ -264,7 +264,7 @@ public void appendBlockWithReorgToChainAtEqualHeight() { } // Check old transactions have been removed for (final Transaction tx : originalHead.getBody().getTransactions()) { - assertThat(blockchain.getTransactionByHash(tx.hash())).isNotPresent(); + assertThat(blockchain.getTransactionByHash(tx.getHash())).isNotPresent(); } assertBlockIsHead(blockchain, fork); @@ -340,7 +340,7 @@ public void appendBlockWithReorgToShorterChain() { assertTotalDifficultiesAreConsistent(blockchain, originalHead); // Check transactions were not indexed for (final Transaction tx : forkBlocks.get(0).getBody().getTransactions()) { - assertThat(blockchain.getTransactionByHash(tx.hash())).isNotPresent(); + assertThat(blockchain.getTransactionByHash(tx.getHash())).isNotPresent(); } // Appended block should be tracked as a fork assertThat(blockchain.blockIsOnCanonicalChain(forkBlocks.get(0).getHash())).isFalse(); @@ -362,7 +362,7 @@ public void appendBlockWithReorgToShorterChain() { removedTransactions.addAll(chain.get(i).getBody().getTransactions()); } for (final Transaction tx : removedTransactions) { - assertThat(blockchain.getTransactionByHash(tx.hash())).isNotPresent(); + assertThat(blockchain.getTransactionByHash(tx.getHash())).isNotPresent(); } // Check that blockNumber index for previous chain head has been removed @@ -432,7 +432,7 @@ public void appendBlockWithReorgToLongerChain() { assertTotalDifficultiesAreConsistent(blockchain, originalHead); // Check transactions were not indexed for (final Transaction tx : forkBlocks.get(0).getBody().getTransactions()) { - assertThat(blockchain.getTransactionByHash(tx.hash())).isNotPresent(); + assertThat(blockchain.getTransactionByHash(tx.getHash())).isNotPresent(); } // Appended block should be tracked as a fork assertThat(blockchain.blockIsOnCanonicalChain(forkBlocks.get(0).getHash())).isFalse(); @@ -454,7 +454,7 @@ public void appendBlockWithReorgToLongerChain() { removedTransactions.addAll(chain.get(i).getBody().getTransactions()); } for (final Transaction tx : removedTransactions) { - assertThat(blockchain.getTransactionByHash(tx.hash())).isNotPresent(); + assertThat(blockchain.getTransactionByHash(tx.getHash())).isNotPresent(); } // Old chain head should now be tracked as a fork. forks = blockchain.getForks(); @@ -510,7 +510,7 @@ public void reorgWithOverlappingTransactions() { // Check old transactions have been removed for (final Transaction tx : chain.get(chainLength - 1).getBody().getTransactions()) { - final Optional actualTransaction = blockchain.getTransactionByHash(tx.hash()); + final Optional actualTransaction = blockchain.getTransactionByHash(tx.getHash()); if (tx.equals(overlappingTx)) { assertThat(actualTransaction).isPresent(); } else { @@ -548,7 +548,7 @@ public void rewindChain() { // Check transactions were not indexed for (final Transaction tx : originalHead.getBody().getTransactions()) { - assertThat(blockchain.getTransactionByHash(tx.hash())).isNotPresent(); + assertThat(blockchain.getTransactionByHash(tx.getHash())).isNotPresent(); } // Check that blockNumber index for previous chain head has been removed @@ -608,7 +608,7 @@ public void appendBlockForFork() { assertTotalDifficultiesAreConsistent(blockchain, originalHead); // Check transactions were not indexed for (final Transaction tx : forkBlock.getBody().getTransactions()) { - assertThat(blockchain.getTransactionByHash(tx.hash())).isNotPresent(); + assertThat(blockchain.getTransactionByHash(tx.getHash())).isNotPresent(); } // Appended block should be tracked as a fork assertThat(blockchain.blockIsOnCanonicalChain(forkBlock.getHash())).isFalse(); @@ -775,7 +775,7 @@ private void assertBlockDataIsStored( final List txs = block.getBody().getTransactions(); for (int i = 0; i < txs.size(); i++) { final Transaction expected = txs.get(i); - final Transaction actual = blockchain.getTransactionByHash(expected.hash()).get(); + final Transaction actual = blockchain.getTransactionByHash(expected.getHash()).get(); assertThat(actual).isEqualTo(expected); } final List actualReceipts = blockchain.getTxReceipts(hash).get(); diff --git a/ethereum/core/src/test/java/org/hyperledger/besu/ethereum/core/TransactionTest.java b/ethereum/core/src/test/java/org/hyperledger/besu/ethereum/core/TransactionTest.java index 8d02dceb0e3..4fa1dbb3ccc 100644 --- a/ethereum/core/src/test/java/org/hyperledger/besu/ethereum/core/TransactionTest.java +++ b/ethereum/core/src/test/java/org/hyperledger/besu/ethereum/core/TransactionTest.java @@ -120,7 +120,7 @@ public void milestone(final String milestone) { assertThat(actualRlp).isEqualTo(rlp); assertThat(transaction.getSender()).isEqualTo(expected.getSender()); - assertThat(transaction.hash()).isEqualTo(expected.getHash()); + assertThat(transaction.getHash()).isEqualTo(expected.getHash()); } catch (final Exception e) { assertThat(expected.isSucceeds()).isFalse(); } diff --git a/ethereum/eth/src/main/java/org/hyperledger/besu/ethereum/eth/transactions/PeerTransactionTracker.java b/ethereum/eth/src/main/java/org/hyperledger/besu/ethereum/eth/transactions/PeerTransactionTracker.java index 888bb0cce1b..4e517b26b3e 100644 --- a/ethereum/eth/src/main/java/org/hyperledger/besu/ethereum/eth/transactions/PeerTransactionTracker.java +++ b/ethereum/eth/src/main/java/org/hyperledger/besu/ethereum/eth/transactions/PeerTransactionTracker.java @@ -35,7 +35,7 @@ public class PeerTransactionTracker implements EthPeer.DisconnectCallback { public synchronized void markTransactionsAsSeen( final EthPeer peer, final Collection transactions) { final Set seenTransactionsForPeer = getOrCreateSeenTransactionsForPeer(peer); - transactions.stream().map(Transaction::hash).forEach(seenTransactionsForPeer::add); + transactions.stream().map(Transaction::getHash).forEach(seenTransactionsForPeer::add); } public synchronized void addToPeerSendQueue(final EthPeer peer, final Transaction transaction) { @@ -64,7 +64,8 @@ private Set getOrCreateSeenTransactionsForPeer(final EthPeer peer) { private boolean hasPeerSeenTransaction(final EthPeer peer, final Transaction transaction) { final Set seenTransactionsForPeer = seenTransactions.get(peer); - return seenTransactionsForPeer != null && seenTransactionsForPeer.contains(transaction.hash()); + return seenTransactionsForPeer != null + && seenTransactionsForPeer.contains(transaction.getHash()); } private Set createTransactionsSet() { diff --git a/ethereum/eth/src/main/java/org/hyperledger/besu/ethereum/eth/transactions/PendingTransactions.java b/ethereum/eth/src/main/java/org/hyperledger/besu/ethereum/eth/transactions/PendingTransactions.java index 822fa0cec5e..e06ff91eafc 100644 --- a/ethereum/eth/src/main/java/org/hyperledger/besu/ethereum/eth/transactions/PendingTransactions.java +++ b/ethereum/eth/src/main/java/org/hyperledger/besu/ethereum/eth/transactions/PendingTransactions.java @@ -149,7 +149,8 @@ void transactionAddedToBlock(final Transaction transaction) { private void doRemoveTransaction(final Transaction transaction, final boolean addedToBlock) { synchronized (pendingTransactions) { - final TransactionInfo removedTransactionInfo = pendingTransactions.remove(transaction.hash()); + final TransactionInfo removedTransactionInfo = + pendingTransactions.remove(transaction.getHash()); if (removedTransactionInfo != null) { prioritizedTransactions.remove(removedTransactionInfo); removeTransactionTrackedBySenderAndNonce(transaction); @@ -377,7 +378,7 @@ public boolean isReceivedFromLocalSource() { } public Hash getHash() { - return transaction.hash(); + return transaction.getHash(); } public Instant getAddedToPoolAt() { diff --git a/ethereum/eth/src/main/java/org/hyperledger/besu/ethereum/eth/transactions/TransactionPool.java b/ethereum/eth/src/main/java/org/hyperledger/besu/ethereum/eth/transactions/TransactionPool.java index 10e9a25122c..f6978a2fe40 100644 --- a/ethereum/eth/src/main/java/org/hyperledger/besu/ethereum/eth/transactions/TransactionPool.java +++ b/ethereum/eth/src/main/java/org/hyperledger/besu/ethereum/eth/transactions/TransactionPool.java @@ -135,7 +135,7 @@ public void addRemoteTransactions(final Collection transactions) { } final Set addedTransactions = new HashSet<>(); for (final Transaction transaction : transactions) { - if (pendingTransactions.containsTransaction(transaction.hash())) { + if (pendingTransactions.containsTransaction(transaction.getHash())) { // We already have this transaction, don't even validate it. duplicateTransactionCounter.labels(REMOTE).inc(); continue; diff --git a/ethereum/eth/src/test/java/org/hyperledger/besu/ethereum/eth/transactions/PendingTransactionsTest.java b/ethereum/eth/src/test/java/org/hyperledger/besu/ethereum/eth/transactions/PendingTransactionsTest.java index 3f0d0addf93..ab325d3d32d 100644 --- a/ethereum/eth/src/test/java/org/hyperledger/besu/ethereum/eth/transactions/PendingTransactionsTest.java +++ b/ethereum/eth/src/test/java/org/hyperledger/besu/ethereum/eth/transactions/PendingTransactionsTest.java @@ -514,11 +514,11 @@ private Transaction transactionWithNonceSenderAndGasPrice( } private void assertTransactionPending(final Transaction t) { - assertThat(transactions.getTransactionByHash(t.hash())).contains(t); + assertThat(transactions.getTransactionByHash(t.getHash())).contains(t); } private void assertTransactionNotPending(final Transaction t) { - assertThat(transactions.getTransactionByHash(t.hash())).isEmpty(); + assertThat(transactions.getTransactionByHash(t.getHash())).isEmpty(); } private Transaction createTransaction(final int transactionNumber) { diff --git a/ethereum/eth/src/test/java/org/hyperledger/besu/ethereum/eth/transactions/TransactionPoolTest.java b/ethereum/eth/src/test/java/org/hyperledger/besu/ethereum/eth/transactions/TransactionPoolTest.java index 5c9438d4078..844e8dcc309 100644 --- a/ethereum/eth/src/test/java/org/hyperledger/besu/ethereum/eth/transactions/TransactionPoolTest.java +++ b/ethereum/eth/src/test/java/org/hyperledger/besu/ethereum/eth/transactions/TransactionPoolTest.java @@ -384,11 +384,11 @@ public void shouldDiscardRemoteTransactionThatAlreadyExistsBeforeValidation() { Wei.ZERO, metricsSystem); - when(pendingTransactions.containsTransaction(transaction1.hash())).thenReturn(true); + when(pendingTransactions.containsTransaction(transaction1.getHash())).thenReturn(true); transactionPool.addRemoteTransactions(singletonList(transaction1)); - verify(pendingTransactions).containsTransaction(transaction1.hash()); + verify(pendingTransactions).containsTransaction(transaction1.getHash()); verifyZeroInteractions(transactionValidator); verifyNoMoreInteractions(pendingTransactions); } @@ -606,11 +606,11 @@ public void shouldCallValidatorWithExpectedValidationParameters() { } private void assertTransactionPending(final Transaction t) { - assertThat(transactions.getTransactionByHash(t.hash())).contains(t); + assertThat(transactions.getTransactionByHash(t.getHash())).contains(t); } private void assertTransactionNotPending(final Transaction transaction) { - assertThat(transactions.getTransactionByHash(transaction.hash())).isEmpty(); + assertThat(transactions.getTransactionByHash(transaction.getHash())).isEmpty(); } private void verifyChainHeadIs(final Block forkBlock2) { diff --git a/ethereum/permissioning/src/main/java/org/hyperledger/besu/ethereum/permissioning/AccountLocalConfigPermissioningController.java b/ethereum/permissioning/src/main/java/org/hyperledger/besu/ethereum/permissioning/AccountLocalConfigPermissioningController.java index e6f19a27cf5..34574ff522a 100644 --- a/ethereum/permissioning/src/main/java/org/hyperledger/besu/ethereum/permissioning/AccountLocalConfigPermissioningController.java +++ b/ethereum/permissioning/src/main/java/org/hyperledger/besu/ethereum/permissioning/AccountLocalConfigPermissioningController.java @@ -235,7 +235,7 @@ private List normalizeAccounts(final List accounts) { @Override public boolean isPermitted(final Transaction transaction) { - final Hash transactionHash = transaction.hash(); + final Hash transactionHash = transaction.getHash(); final Address sender = transaction.getSender(); LOG.trace("Account permissioning - Local Config: Checking transaction {}", transactionHash); diff --git a/ethereum/permissioning/src/main/java/org/hyperledger/besu/ethereum/permissioning/TransactionSmartContractPermissioningController.java b/ethereum/permissioning/src/main/java/org/hyperledger/besu/ethereum/permissioning/TransactionSmartContractPermissioningController.java index 0e80ed37c0a..54995659f33 100644 --- a/ethereum/permissioning/src/main/java/org/hyperledger/besu/ethereum/permissioning/TransactionSmartContractPermissioningController.java +++ b/ethereum/permissioning/src/main/java/org/hyperledger/besu/ethereum/permissioning/TransactionSmartContractPermissioningController.java @@ -109,7 +109,7 @@ public TransactionSmartContractPermissioningController( */ @Override public boolean isPermitted(final Transaction transaction) { - final org.hyperledger.besu.ethereum.core.Hash transactionHash = transaction.hash(); + final org.hyperledger.besu.ethereum.core.Hash transactionHash = transaction.getHash(); final Address sender = transaction.getSender(); LOG.trace("Account permissioning - Smart Contract : Checking transaction {}", transactionHash); diff --git a/ethereum/permissioning/src/main/java/org/hyperledger/besu/ethereum/permissioning/account/AccountPermissioningController.java b/ethereum/permissioning/src/main/java/org/hyperledger/besu/ethereum/permissioning/account/AccountPermissioningController.java index d61d2008aad..ad56d4f662a 100644 --- a/ethereum/permissioning/src/main/java/org/hyperledger/besu/ethereum/permissioning/account/AccountPermissioningController.java +++ b/ethereum/permissioning/src/main/java/org/hyperledger/besu/ethereum/permissioning/account/AccountPermissioningController.java @@ -46,7 +46,7 @@ public AccountPermissioningController( } public boolean isPermitted(final Transaction transaction, final boolean includeOnChainCheck) { - final Hash transactionHash = transaction.hash(); + final Hash transactionHash = transaction.getHash(); final Address sender = transaction.getSender(); LOG.trace("Account permissioning: Checking transaction {}", transactionHash); diff --git a/plugin-api/build.gradle b/plugin-api/build.gradle index e76d375cd63..f5d3c84f8e2 100644 --- a/plugin-api/build.gradle +++ b/plugin-api/build.gradle @@ -56,7 +56,7 @@ Calculated : ${currentHash} tasks.register('checkAPIChanges', FileStateChecker) { description = "Checks that the API for the Plugin-API project does not change without deliberate thought" files = sourceSets.main.allJava.files - knownHash = 'zaoahMUhnC3tj6nhjrXTMhIDeN4HnhqmM4x9Lqz28T0=' + knownHash = 'r6Pxn8oiwGzBC9zuVzIj+9sjXpaUDjrXihOh14E+QdU=' } check.dependsOn('checkAPIChanges') diff --git a/plugin-api/src/main/java/org/hyperledger/besu/plugin/data/Transaction.java b/plugin-api/src/main/java/org/hyperledger/besu/plugin/data/Transaction.java index 1c022831a03..9e0781c9670 100644 --- a/plugin-api/src/main/java/org/hyperledger/besu/plugin/data/Transaction.java +++ b/plugin-api/src/main/java/org/hyperledger/besu/plugin/data/Transaction.java @@ -32,6 +32,13 @@ @Unstable public interface Transaction { + /** + * The Keccak 256-bit hash of this transaction. + * + * @return The Keccak 256-bit hash of this transaction. + */ + Hash getHash(); + /** * A scalar value equal to the number of transactions sent by the sender. *