Interface OmniSigningService

All Known Implementing Classes:
OmniKeychainSigningService, OmniRpcClientSigningService

public interface OmniSigningService
A service to sign Omni transactions
  • Method Details

    • omniSignTx

      default CompletableFuture<org.bitcoinj.core.Transaction> omniSignTx(org.bitcoinj.base.Address fromAddress, List<TransactionInputData> inputUtxos, Transactions.OmniTx omniTx, org.bitcoinj.base.Address changeAddress, org.bitcoinj.base.Address redeemAddress, org.bitcoinj.base.Coin referenceAmount)
    • omniSignTx

      default CompletableFuture<org.bitcoinj.core.Transaction> omniSignTx(org.bitcoinj.base.Address fromAddress, List<? super TransactionInputData> inputUtxos, Transactions.OmniTx omniTx, org.bitcoinj.base.Address changeAddress)
    • omniSignTx

      default CompletableFuture<org.bitcoinj.core.Transaction> omniSignTx(UnsignedTxSimpleSend unsignedTx)
    • signTx

      CompletableFuture<org.bitcoinj.core.Transaction> signTx(SigningRequest signingRequest)
      Sign a Bitcoin transaction (possibly with an embedded Omni Class C or Class B transaction)
      Parameters:
      signingRequest - a ConsensusJ signing request
      Returns:
      a signed bitcoinj transaction
    • createOmniClassCSigningRequest

      default SigningRequest createOmniClassCSigningRequest(org.bitcoinj.base.Address fromAddress, List<? super TransactionInputData> inputUtxos, Transactions.OmniTx omniTx, org.bitcoinj.base.Address changeAddress)
      Build a SigningRequest for an Omni transaction. Performs the following:
      1. Includes all inputs in the transaction (TBD: choose minimal/optional subset)
      2. Creates an OP_RETURN output with the payload
      3. Creates a reference address output if necessary
      4. Adds a change address (if there's change)
      Parameters:
      fromAddress - The sending/signing address
      inputUtxos - List of UTXOs for funding the transaction
      omniTx - The Omni transaction payload to send
      changeAddress - Address to return bitcoin change to
      Returns:
      A ConsensusJ SigningRequest for the transaction
    • createOmniClassCSigningRequest

      default SigningRequest createOmniClassCSigningRequest(UnsignedTxSimpleSend unsignedTxSimpleSend)
    • feeCalculator

      FeeCalculator feeCalculator()
    • network

      org.bitcoinj.base.Network network()
    • createOpReturn

      default TransactionOutputData createOpReturn(Transactions.OmniTx omniTx)