Skip to content

Commit

Permalink
Improve getTransaction API. Fix commitment override.
Browse files Browse the repository at this point in the history
  • Loading branch information
jpe7s committed Oct 8, 2024
1 parent 97c8092 commit e4df64c
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@
import software.sava.rpc.json.PublicKeyEncoding;
import software.sava.rpc.json.http.request.Commitment;
import software.sava.rpc.json.http.request.ContextBoolVal;
import software.sava.rpc.json.http.request.RpcEncoding;
import software.sava.rpc.json.http.response.*;
import systems.comodal.jsoniter.JsonIterator;

Expand Down Expand Up @@ -720,11 +719,6 @@ public CompletableFuture<Tx> getTransaction(final String txSignature) {
return getTransaction(defaultCommitment, txSignature);
}

@Override
public CompletableFuture<Tx> getTransaction(final Commitment commitment, final String txSignature) {
return getTransaction(defaultCommitment, txSignature, Integer.MIN_VALUE, RpcEncoding.base64.name());
}

@Override
public CompletableFuture<Tx> getTransaction(final String txSignature,
final int maxSupportedTransactionVersion,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
import software.sava.core.tx.Transaction;
import software.sava.rpc.json.http.request.Commitment;
import software.sava.rpc.json.http.request.ContextBoolVal;
import software.sava.rpc.json.http.request.RpcEncoding;
import software.sava.rpc.json.http.response.*;

import java.net.URI;
Expand All @@ -30,6 +31,7 @@
public interface SolanaRpcClient {

int MAX_MULTIPLE_ACCOUNTS = 100;
int MAX_GET_SIGNATURES = 1_000;

static SolanaRpcClient createClient(final URI endpoint,
final HttpClient httpClient,
Expand Down Expand Up @@ -333,17 +335,40 @@ default CompletableFuture<Map<String, TxStatus>> getSignatureStatuses(final List

CompletableFuture<Tx> getTransaction(final String txSignature);

CompletableFuture<Tx> getTransaction(final Commitment commitment, final String txSignature);
default CompletableFuture<Tx> getTransaction(final Commitment commitment, final String txSignature) {
return getTransaction(commitment, txSignature, 0, RpcEncoding.base64.name());
}

default CompletableFuture<Tx> getTransaction(final String txSignature, final String encoding) {
return getTransaction(txSignature, 0, encoding);
}

default CompletableFuture<Tx> getTransaction(final String txSignature, final RpcEncoding encoding) {
return getTransaction(txSignature, 0, encoding.name());
}

CompletableFuture<Tx> getTransaction(final String txSignature,
final int maxSupportedTransactionVersion,
final String encoding);

default CompletableFuture<Tx> getTransaction(final String txSignature,
final int maxSupportedTransactionVersion,
final RpcEncoding encoding) {
return getTransaction(txSignature, maxSupportedTransactionVersion, encoding.name());
}

CompletableFuture<Tx> getTransaction(final Commitment commitment,
final String txSignature,
final int maxSupportedTransactionVersion,
final String encoding);

default CompletableFuture<Tx> getTransaction(final Commitment commitment,
final String txSignature,
final int maxSupportedTransactionVersion,
final RpcEncoding encoding) {
return getTransaction(commitment, txSignature, maxSupportedTransactionVersion, encoding.name());
}

CompletableFuture<Long> getTransactionCount();

CompletableFuture<Long> getTransactionCount(final Commitment commitment);
Expand Down

0 comments on commit e4df64c

Please sign in to comment.