Client API. The Codename One framework your app is built on: this runs on the device, not in a backend.
package com.codename1.crypto.rpc
Chain network clients:
EvmRpc for Ethereum JSON-RPC,
EsploraClient for the Bitcoin Esplora REST API and
SolanaRpc for Solana JSON-RPC, all written against one
RpcTransport. In an application that is
NetworkTransport, over the NetworkManager; the backend has its own
over its WebClient. Calls block; from the EDT they wait with invokeAndBlock.Types
class EsploraClient shared | A Bitcoin client for the Esplora REST API, which Blockstream and mempool.space run in public and anyone can self-host: unspent outputs, balances, fee estimates and broadcasting. |
class EvmRpc shared | An Ethereum JSON-RPC client, for any EVM chain: balances, nonces, fees, gas estimates, calls, broadcasting and receipts. |
class JsonRpc shared | JSON-RPC 2.0 over an RpcTransport: what Ethereum and Solana nodes speak. |
class NetworkTransport | The application’s RpcTransport: each request goes through the NetworkManager queue as a ConnectionRequest, waiting with addToQueueAndWait, so a call from the EDT keeps the UI responsive. |
class RpcException shared | A failure the remote end reported: an HTTP status outside 2xx, or a JSON-RPC error object. |
interface RpcTransport shared | The one HTTP exchange every chain client needs: send a body, read the reply. |
class SolanaRpc shared | A Solana JSON-RPC client: balances, the recent blockhash a transaction needs, rent, token balances, sending and confirmation. |