SorobanServer class
This class helps you to connect to a local or remote soroban rpc server and send requests to the server. It parses the results and provides corresponding response objects.
Constructors
- SorobanServer(String _serverUrl)
- Constructor. Provide the url of the soroban rpc server to initialize this class.
Properties
- enableLogging ↔ bool
-
getter/setter pair
- hashCode → int
-
The hash code for this object.
no setterinherited
- httpOverrides ← bool
-
Dio HTTP Overrides
enable overrides to handle badCertificateCallback.
available only for the non-Web platform.
no getter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
getAccount(
String accountId) → Future< Account?> -
Fetches a minimal set of current info about a Stellar account. Needed to get the current sequence
number for the account, so you can build a successful transaction.
Returns null if account was not found for the given
accountId
. -
getContractData(
String contractId, XdrSCVal key, XdrContractDataDurability durability) → Future< LedgerEntry?> -
Reads the current value of contract data ledger entries directly.
Requires the
contractId
of the contract containing the data to load, thekey
of the contract data to load, Thedurability
keyspace that this ledger key belongs to, which is either XdrContractDataDurability.TEMPORARY or XdrContractDataDurability.PERSISTENT -
getEvents(
GetEventsRequest request) → Future< GetEventsResponse> - Clients can request a filtered list of events emitted by a given ledger range. Soroban-RPC will support querying within a maximum 24 hours of recent ledgers. Note, this could be used by the client to only prompt a refresh when there is a new ledger with relevant events. It should also be used by backend Dapp components to "ingest" events into their own database for querying and serving. If making multiple requests, clients should deduplicate any events received, based on the event's unique id field. This prevents double-processing in the case of duplicate events being received. By default soroban-rpc retains the most recent 24 hours of events. See: https://developers.stellar.org/network/soroban-rpc/api-reference/methods/getEvents
-
getFeeStats(
) → Future< GetFeeStatsResponse> - Statistics for charged inclusion fees. The inclusion fee statistics are calculated from the inclusion fees that were paid for the transactions to be included onto the ledger. For Soroban transactions and Stellar transactions, they each have their own inclusion fees and own surge pricing. Inclusion fees are used to prevent spam and prioritize transactions during network traffic surge.
-
getHealth(
) → Future< GetHealthResponse> - General node health check request. See: https://developers.stellar.org/network/soroban-rpc/api-reference/methods/getHealth
-
getLatestLedger(
) → Future< GetLatestLedgerResponse> - For finding out the current latest known ledger. See: https://developers.stellar.org/network/soroban-rpc/api-reference/methods/getLatestLedger
-
getLedgerEntries(
List< String> base64EncodedKeys) → Future<GetLedgerEntriesResponse> - For reading the current value of ledger entries directly. Allows you to directly inspect the current state of a contract, a contract’s code, or any other ledger entry. This is a backup way to access your contract data which may not be available via events or simulateTransaction. To fetch contract wasm byte-code, use the ContractCode ledger entry key. See: https://developers.stellar.org/network/soroban-rpc/api-reference/methods/getLedgerEntries
-
getNetwork(
) → Future< GetNetworkResponse> - General info about the currently configured network. See: https://developers.stellar.org/network/soroban-rpc/api-reference/methods/getNetwork
-
getTransaction(
String transactionHash) → Future< GetTransactionResponse> - Clients will poll this to tell when the transaction has been completed. See: https://developers.stellar.org/network/soroban-rpc/api-reference/methods/getTransaction
-
getTransactions(
GetTransactionsRequest request) → Future< GetTransactionsResponse> - The getTransactions method return a detailed list of transactions starting from the user specified starting point that you can paginate as long as the pages fall within the history retention of their corresponding RPC provider. See: https://developers.stellar.org/docs/data/rpc/api-reference/methods/getTransactions
-
getVersionInfo(
) → Future< GetVersionInfoResponse> - Version information about the RPC and Captive core. RPC manages its own, pared-down version of Stellar Core optimized for its own subset of needs. See: https://developers.stellar.org/docs/data/rpc/api-reference/methods/getVersionInfo
-
loadContractCodeForContractId(
String contractId) → Future< XdrContractCodeEntry?> - Loads the contract code entry (including source code - wasm bytes) for a given contract id.
-
loadContractCodeForWasmId(
String wasmId) → Future< XdrContractCodeEntry?> - Loads the contract source code (including source code - wasm bytes) for a given wasm id.
-
loadContractInfoForContractId(
String contractId) → Future< SorobanContractInfo?> -
Loads contract source byte code for the given
contractId
and extracts the information (Environment Meta, Contract Spec, Contract Meta). Returns SorobanContractInfo or null if the contract was not found. Throws SorobanContractParserFailed if parsing of the byte code failed. -
loadContractInfoForWasmId(
String wasmId) → Future< SorobanContractInfo?> -
Loads contract source byte code for the given
wasmId
and extracts the information (Environment Meta, Contract Spec, Contract Meta). Returns SorobanContractInfo null if the contract was not found. Throws SorobanContractParserFailed if parsing of the byte code failed. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
sendTransaction(
Transaction transaction) → Future< SendTransactionResponse> - Submit a real transaction to the stellar network. This is the only way to make changes “on-chain”. Unlike Horizon, this does not wait for transaction completion. It simply validates and enqueues the transaction. Clients should call getTransactionStatus to learn about transaction success/failure. This supports all transactions, not only smart contract-related transactions. See: https://developers.stellar.org/network/soroban-rpc/api-reference/methods/sendTransaction
-
simulateTransaction(
SimulateTransactionRequest request) → Future< SimulateTransactionResponse> - Submit a trial contract invocation to get back return values, expected ledger footprint, and expected costs. See: https://developers.stellar.org/network/soroban-rpc/api-reference/methods/simulateTransaction
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited