Package 

Interface CbfBuilderInterface


  • 
    public interface CbfBuilderInterface
    
                        

    Build a BIP 157/158 light client to fetch transactions for a Wallet.

    Options:

    • List of Peer: Bitcoin full-nodes for the light client to connect to. May be empty.

    • connections: The number of connections for the light client to maintain.

    • scan_type: Sync, recover, or start a new wallet. For more information see `ScanType`.

    • data_dir: Optional directory to store block headers and peers.

    A note on recovering wallets. Developers should allow users to provide an approximate recovery height and an estimated number of transactions for the wallet. When determining how many scripts to check filters for, the Walletlookahead value will be used. To ensure all transactions are recovered, the lookahead should be roughly the number of transactions in the wallet history.

    • Method Summary

      Modifier and Type Method Description
      abstract CbfComponents build(Wallet wallet) Construct a `CbfComponents` for a `Wallet`.
      abstract CbfBuilder configureTimeoutMillis(ULong handshake, ULong response) Configure the time in milliseconds that a node has to:
      • Respond to the initial connection

      • Respond to a request

      abstract CbfBuilder connections(UByte connections) The number of connections for the light client to maintain.
      abstract CbfBuilder dataDir(String dataDir) Directory to store block headers and peers.
      abstract CbfBuilder peers(List<Peer> peers) Bitcoin full-nodes to attempt a connection with.
      abstract CbfBuilder scanType(ScanType scanType) Select between syncing, recovering, or scanning for new wallets.
      abstract CbfBuilder socks5Proxy(Socks5Proxy proxy) Configure connections to be established through a Socks5 proxy. The vast majority of the time, the connection is to a local Tor daemon, which is typically exposed at 127.0.0.1:9050`.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • configureTimeoutMillis

         abstract CbfBuilder configureTimeoutMillis(ULong handshake, ULong response)

        Configure the time in milliseconds that a node has to:

        • Respond to the initial connection

        • Respond to a request

      • connections

         abstract CbfBuilder connections(UByte connections)

        The number of connections for the light client to maintain. Default is two.

      • dataDir

         abstract CbfBuilder dataDir(String dataDir)

        Directory to store block headers and peers. If none is provided, the current working directory will be used.

      • socks5Proxy

         abstract CbfBuilder socks5Proxy(Socks5Proxy proxy)

        Configure connections to be established through a Socks5 proxy. The vast majority of the time, the connection is to a local Tor daemon, which is typically exposed at 127.0.0.1:9050`.