();
keys.add(new AccountMeta(fromPublicKey, true, true));
keys.add(new AccountMeta(newAccountPublikkey, true, true));
diff --git a/src/main/java/org/p2p/solanaj/rpc/Cluster.java b/src/main/java/org/p2p/solanaj/rpc/Cluster.java
index eaf51262..dbb1b949 100644
--- a/src/main/java/org/p2p/solanaj/rpc/Cluster.java
+++ b/src/main/java/org/p2p/solanaj/rpc/Cluster.java
@@ -1,11 +1,11 @@
package org.p2p.solanaj.rpc;
public enum Cluster {
- DEVNET("https://devnet.solana.com"),
- TESTNET("https://testnet.solana.com"),
+ DEVNET("https://api.devnet.solana.com"),
+ TESTNET("https://api.testnet.solana.com"),
MAINNET("https://api.mainnet-beta.solana.com");
- private String endpoint;
+ private final String endpoint;
Cluster(String endpoint) {
this.endpoint = endpoint;
diff --git a/src/main/java/org/p2p/solanaj/rpc/RpcApi.java b/src/main/java/org/p2p/solanaj/rpc/RpcApi.java
index 0f5685ca..f012de6c 100644
--- a/src/main/java/org/p2p/solanaj/rpc/RpcApi.java
+++ b/src/main/java/org/p2p/solanaj/rpc/RpcApi.java
@@ -1,33 +1,23 @@
package org.p2p.solanaj.rpc;
-import java.util.AbstractMap;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Base64;
-import java.util.List;
-
import org.p2p.solanaj.core.Account;
+import org.p2p.solanaj.core.Block;
import org.p2p.solanaj.core.PublicKey;
import org.p2p.solanaj.core.Transaction;
-import org.p2p.solanaj.rpc.types.ConfigObjects.*;
-import org.p2p.solanaj.rpc.types.AccountInfo;
-import org.p2p.solanaj.rpc.types.ConfirmedTransaction;
-import org.p2p.solanaj.rpc.types.ProgramAccount;
-import org.p2p.solanaj.rpc.types.RecentBlockhash;
-import org.p2p.solanaj.rpc.types.RpcSendTransactionConfig;
-import org.p2p.solanaj.rpc.types.SignatureInformation;
-import org.p2p.solanaj.rpc.types.RpcResultTypes.ValueLong;
-import org.p2p.solanaj.rpc.types.RpcSendTransactionConfig.Encoding;
+import org.p2p.solanaj.rpc.types.*;
import org.p2p.solanaj.ws.SubscriptionWebSocketClient;
import org.p2p.solanaj.ws.listeners.NotificationEventListener;
+import java.util.*;
+
public class RpcApi {
- private RpcClient client;
+ private final RpcClient client;
public RpcApi(RpcClient client) {
this.client = client;
}
+ @Deprecated
public String getRecentBlockhash() throws RpcException {
return client.call("getRecentBlockhash", null, RecentBlockhash.class).getRecentBlockhash();
}
@@ -36,6 +26,77 @@ public String sendTransaction(Transaction transaction, Account signer) throws Rp
return sendTransaction(transaction, Arrays.asList(signer));
}
+ /**
+ * JSON RPC API Reference
+ *
+ * getAccountInfo - done
+ * getBalance - done
+ * getBlockTime - done
+ * getMinimumBalanceForRentExemption - done
+ * getProgramAccounts - done
+ * requestAirdrop - done
+ * sendTransaction - done
+ *
+ * getBlock
+ * getBlockHeight
+ * getBlockProduction
+ * getBlockCommitment
+ * getBlocks
+ * getBlocksWithLimit
+ * getClusterNodes
+ * getEpochInfo
+ * getEpochSchedule
+ * getFeeForMessage
+ * getFirstAvailableBlock
+ * getGenesisHash
+ * getHealth
+ * getHighestSnapshotSlot
+ * getIdentity
+ * getInflationGovernor
+ * getInflationRate
+ * getInflationReward
+ * getLargestAccounts
+ * getLatestBlockhash
+ * getLeaderSchedule
+ * getMaxRetransmitSlot
+ * getMaxShredInsertSlot
+ * getMultipleAccounts
+ * getRecentPerformanceSamples
+ * getSignaturesForAddress
+ * getSignatureStatuses
+ * getSlot
+ * getSlotLeader
+ * getSlotLeaders
+ * getStakeActivation
+ * getSupply
+ * getTokenAccountBalance
+ * getTokenAccountsByDelegate
+ * getTokenAccountsByOwner
+ * getTokenLargestAccounts
+ * getTokenSupply
+ * getTransaction
+ * getTransactionCount
+ * getVersion
+ * getVoteAccounts
+ * isBlockhashValid
+ * minimumLedgerSlot
+ * simulateTransaction
+ *
+ * JSON RPC API Deprecated Methods
+ *
+ * getConfirmedBlock
+ * getConfirmedBlocks
+ * getConfirmedBlocksWithLimit
+ * getConfirmedSignaturesForAddress2 - used
+ * getConfirmedTransaction - used
+ * getFeeCalculatorForBlockhash
+ * getFeeRateGovernor
+ * getFees
+ * getRecentBlockhash - used
+ * getSnapshotSlot
+ */
+
+
public String sendTransaction(Transaction transaction, List signers) throws RpcException {
String recentBlockhash = getRecentBlockhash();
transaction.setRecentBlockHash(recentBlockhash);
@@ -53,7 +114,7 @@ public String sendTransaction(Transaction transaction, List signers) th
}
public void sendAndConfirmTransaction(Transaction transaction, List signers,
- NotificationEventListener listener) throws RpcException {
+ NotificationEventListener listener) throws RpcException {
String signature = sendTransaction(transaction, signers);
SubscriptionWebSocketClient subClient = SubscriptionWebSocketClient.getInstance(client.getEndpoint());
@@ -65,9 +126,10 @@ public long getBalance(PublicKey account) throws RpcException {
params.add(account.toString());
- return client.call("getBalance", params, ValueLong.class).getValue();
+ return client.call("getBalance", params, RpcResultTypes.ValueLong.class).getValue();
}
+ @Deprecated
public ConfirmedTransaction getConfirmedTransaction(String signature) throws RpcException {
List