All Classes and Interfaces
Class
Description
GraalVM-compatible implementation of
JsonRpcServiceWrapper
that takes a map of Method
s in the constructor
so that introspection can be done at static initialization time (which means during native image generation).Result of OmniCore/BitCore
getaddressbalance
method.Deserialize bitcoinj (family) addresses
For
listaddressgroupings
response
Note: In the JSON response this is actually an arrayKey Deserializer to support using Address as the key in a Map.
Address Request for BitCore
getaddressbalance
and others.UTXO Info object from Bitcore/Omni
getaddressutxos
.Result from Bitcore/Omni
getaddressutxos
.Helper methods for creating asynchronous calls using
CompletableFuture
.Subinterface of
Supplier
for Lambdas which throw IOException
.Error filter for resilient polling.
An abstract base class for JsonRpcClientTool that uses Apache Commons CLI
A template interface, implementations need only implement
BaseTransactionSigner.keyForInput(TransactionInputData)
.Deprecated.
Will be removed in the next release.
Deterministic Keychain for BIP44 and related BIPs
Deprecated.
Use
KeyChainGroupStructure.BIP43
and constants in DeterministicKeyChain
JSON-RPC Client for Bitcoin Core.
Interface for tests that use a BitcoinExtendedClient
A
ThreadFactory
for the BitcoinClient
.An attempt at cloning the
bitcoin-cli
tool, but using Java and bitcoinj.Bitcoin configuration from bitcoin.conf
First cut is just a map, but future versions may be strongly typed
Utility class with (extremely limited) parsing of
bitcoin.conf
A BitcoinCurrencyProvider based on work in the javamoney-shelter.
Configuration record for the daemon.
Extended Bitcoin JSON-RPC Client with added convenience methods.
Initialize bitcoinj components, etc.
Standard Bitcoin JSON-RPC API RPCs.
Embryonic implementation of Bitcoin Core REST API.
Command-line options for tools that communicate with Bitcoin RPC
(Mostly) Immutable representation of BitcoinTransaction info JSON
Use record-style naming, rather than JavaBean naming, just for fun.
Bitcoin ZeroMQ topic names.
Utility to use Bitcoin Core JSON-RPC to find configured ZMQ notification ports.
Abstraction(s) to help reuse tests between RegTest mode and TestNet or MainNet
RegTest mode implementation will generate blocks when waitForBlocks() is called.
POJO for `getblockchaininfo` RPC response.
Wait for synchronization with a reference source of block height.
Deserializes a hex string as a Bitcoin
Block
BlockInfo POJO returned by GetBlockInfo
Utility class containing
BlockUtil.blockHeightFromCoinbase(Block)
BTCR DID
Test support functions intended to be mixed-in to Spock test specs
Interface for a Bitcoin JSON-RPC client that implements
getchaintips
.Marker type for
Publisher<ChainTip>
.A publisher of
ChainTip
Holds all the results (status code, stdout, stderr) of a CLI command run by a test
JSON-RPC method parameter, parsed from the command-line.
Implementation for Invalid source strings
Implementation for Valid objects
Parser for command-line JSON-RPC method and parameters
Support functions for testing command-line tools
Deserialize a numeric value to a bitcoinj
Coin
type.Serialize a bitcoinj
Coin
type.A Trust Manager that adds a second trust store (key store) to the default trust store.
Currency Pair using JavaMoney CurrencyUnit type
A strongly-typed, Jackson-based JSON-RPC client.
Functional interface for ignoring what are considered "transient" errors.
Functional interface for creating JsonRpcTransport instances.
Simple implementation of SigningRequest
Implementation of
JsonRpcServiceWrapper
that takes a delegate
object in the constructor.Demo of using bitcoinj DSL for JavaScript
Representation of a W3C DID
Based on java.net.URI with some inspiration from OkHttp.HttpUrl and use of Java 8-style `.of()` methods.
Dummy so JavaDoc doesn't fail
Simple Echo JSON-RPC Service
Serialize (without private key)
A simple transaction signer using a single ECKey that can sign either
ScriptType.P2PKH
or ScriptType.P2WPKH
transactions.A partial implementation of an Ethereum RPC Client
How to mine just a little for "reg test mode" in Eth:
https://github.com/ethereum/go-ethereum/wiki/bitchin-tricks
See also:
https://github.com/ethereum/go-ethereum/wiki/Management-APIs
Deprecated.
Deprecated.
A Bech32 representation of a Bitcoin transaction output
Interface for transaction fee calculation.
A source of Bitcoin funds for testing
In RegTest mode, it can be a RegTestFundingSource that mines coins in RegTest mode and sends them
to a requesting address.
Interface for tests that use a FundingSource
JSON-RPC Command-line tool with logging support.
A "signing wallet" that uses a
DeterministicKeyChain
to
sign SigningRequest
s.Hex string to hex conversion utility class.
GraalVM-compatible support for using Java Logging.
JSON-RPC client interface.
JSON-RPC Client using
HttpURLConnection
formerly namedRpcClient
.Incubating JSON-RPC client using
HttpClient
Map a response string to a Java object.
Create a REST endpoint from a JsonRpcService
Here we're using Micronaut annotations to wrap the JsonRpcService
in an HTTP environment and to serialize JSON to and from Java POJOs.
Create a REST endpoint from a JsonRpcService
Here we're using Micronaut annotations to wrap the JsonRpcService
in an HTTP environment and to serialize JSON to and from Java POJOs.
JSON-RPC Error Object POJO
Exception wrapper for JsonRpcError
Useful in server implementations, throwing an error that will be transmitted
to the client.
JSON RPC Exception
In the future this may be a superclass for
JsonRpcRequest
and JsonRpcResponse
.JSON-RPC Request POJO
JSON-RPC Response POJO
Note that
result
is a parameterized type and can be used to directly map JSON-RPC results
to the correct type for each method.Interface for an Asynchronous JSON-RPC Server/Service.
Interface and default methods for wrapping a Java class with JSON-RPC support.
JSON-RPC returned HTTP status other than 200 (and unfortunately also sometimes when their is response.error)
Additional information is usually in JSON-RPC response
TODO: See TODO in parent class
JsonRpcException
Command-line options for JSON-RPC tool
Defines the interface for a network-layer implementation of a JSON-RPC client.
Accumulates the
n
largest slices of a stream of objects of type <E>
.Collector that collects the
n
objects containing the "largest slices" of an input stream of
type <E>
.Represents a filtered subset of a collection or stream of objects.
An immutable implementation of
LargestSliceList
.Response object for
createwallet
and loadwallet
Simple service and command-line tool that contains a "math" JsonRpcService
Allows testing method dispatch independent of any server code or framework
(including compiling with Graal `native-image` and running as a native tool with SubstrateVM)
An entry for a JSON-RPC method in a
help
response.Subclass of
WalletAppKitService
that implements the stop
JSON-RPC method using
Micronaut ApplicationContextLifeCycle.stop()
Namecoin RPC client
See: https://wiki.namecoin.org/index.php?title=Client_API
Namecoin name data
example format:
[name:d/beelin,
value:{"alias":"beelin.github.io"},
txid:5737868f7044ade9b0c04698c563955d9b49db841a4e575bc384873073b956ed,
address:NAPwebo2VLvGdBFC4cHrLRPS6ZXPKddx9Z,
expires_in:31874]
POJO for `getnetworkinfo` RPC response.
Simple command-line tool to do Namecoin name lookup
Bare minimum Namecoin support for creating Addresses on Namecoin MainNet.
If string is an integer (valid long) serialize as Number, else serialize as String
Deprecated.
A source of exchange rate updates for a currency pair
Data class for Outpoint as used by RPC methods
Custom Serialization of bitcoinj Peer class
Implements ObservablePair using an exchange rate polling function and an interval
Deprecated.
Use the
PollingChainTipServiceImpl
implementationProvides
ChainTipService
a using a BitcoinClient
and a polling interval.RawTransaction POJO
This represents the data in
signrawtransactionwithwallet
.Single-threaded RegTest testing environment.
FundingSource using RegTest mining, BitcoinExtendedClient (with getRegTestMiningAddress),
and the server's default wallet for accumulating coins.
Interface for reactive rich list service
Jackson Module with serializers and deserializers for JSON-RPC clients.
Configuration class for JSON-RPC client.
Jackson Module with serializers and deserializers for JSON-RPC servers.
Interface with default connection information for Bitcoin JSON-RPC
A
BitcoinClient
enhanced with Reactive features.Bitcoin Zmq binary service that connects to a single port.
Service to listen for ZMQ messages from multiple TCP ports.
Add conversion to bitcoinj-types to
RxBitcoinZmqBinaryService
.For lower-level, higher-performance reactive subscriptions to blockchain data where we don't
want the overhead of parsing (and instantiating as a tree of objects) each block or transaction.
Reactive Streams interface for subscribing to reactive blockchain data.
Deprecated.
RxJava support for calling JSON-RPC clients.
Provide Reactive Publishers for
PeerGroup
information.ZMQ Context with a single socket and one
Processor<ZMsg>
per topic.Sample Bitcoin ZMQ client
ScriptRunner that places a JSON-RPC client and Bitcoin utility functions inside
a script context so they can be called from JavaScript (currently Nashorn, but in
the future this may be Graal Javascript)
Simple interface for sending signed "raw" transactions
POJO for `getinfo` RPC response.
Deserialize a hex string to a bitcoinj
Sha256Hash
type.Serialize a bitcoinj
Sha256Hash
type.A transaction signing request with immutable data specifying the transaction.
A wallet-level service that can complete and sign transactions.
Useful for testing.
Stupid simple fee calculator for testnet
Credentials to server under test.
Response format for Omni rich list queries.
Serialize a transaction as a hex-encoded binary string.
Everything needed to build your own custom transaction
TODO: Make this an immutable bean
Immutable data for a transaction input.
Immutable aggregate of data for TransactionInput.
Raw, immutable data for a pay-to-address transaction output
Raw, immutable data for a transaction output
Raw, immutable data for an OP_RETURN transaction output
Custom Serialization of Transaction Peer class
A low-level transaction signing interface that can sign a
SigningRequest
that is a complete
transaction that only needs signatures.Utility for transaction validation
Result of `gettxout`
Result of `gettxoutsetinfo`
Service to return a stream of TxOutSetInfos for a given blockchain/client.
Sample command-line tool that subscribes to ChainTip and TxOutSetInfo
Response object for
createwallet
and loadwallet
Data class for UnspentOutput as returned by listUnspent RPC
Because the class is immutable we have to give Jackson some hints via annotations.
UTXO info for transaction signing.
Bare minimum UTXO info: txId and index
UTXO with
amount
and scriptPubKey
.UTXO with "amount" which is necessary for signing a segwit transaction.
Interface for commonly-used UTXO information, for example the
prevtxs
parameter of
the signrawtransactionwithwallet
JSON-RPC request.JSON-RPC wrapper for WalletAppKitService
Implement a subset of Bitcoin JSON RPC using a WalletAppKit
Transaction completion and signing service that uses a bitcoinj
Wallet
.Utilities for integration testing server-side wallets
Detailed information about an in-wallet transaction (from gettransaction RPC)
Information about an active ZeroMQ notification.
Factory class for creating
Publisher<ZMsg>
from a ZMQ.Socket
.