Package 

Interface TransactionDataRequest


  • 
    public interface TransactionDataRequest
    
                        

    A request for transaction data enhancement, spentness check, or discovery of spends from a given transparent address within a specific block range.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      public class TransactionDataRequest.EnhancementRequired
      public final class TransactionDataRequest.GetStatus

      Information about the chain's view of a transaction is requested.

      The caller evaluating this request on behalf of the wallet backend should respond to this request by determining the status of the specified transaction with respect to the main chain; if using lightwalletd for access to chain data, this may be obtained by interpreting the results of the GetTransaction RPC method. It should then call ZcashRustBackend.setTransactionStatus to provide the resulting transaction status information to the wallet backend.

      public final class TransactionDataRequest.Enhancement

      Transaction enhancement (download of complete raw transaction data) is requested.

      The caller evaluating this request on behalf of the wallet backend should respond to this request by providing complete data for the specified transaction to ZcashRustBackend.decryptAndStoreTransaction; if using lightwalletd for access to chain state, this may be obtained via the GetTransaction RPC method. If no data is available for the specified transaction, this should be reported to the backend using ZcashRustBackend.setTransactionStatus. A TransactionDataRequest.enhancement request subsumes any previously existing TransactionDataRequest.getStatus request.

      public final class TransactionDataRequest.TransactionsInvolvingAddress

      Information about transactions that receive or spend funds belonging to the specified transparent address is requested.

      Fully transparent transactions, and transactions that do not contain either shielded inputs or shielded outputs belonging to the wallet, may not be discovered by the process of chain scanning; as a consequence, the wallet must actively query to find transactions that spend such funds. Ideally we'd be able to query by OutPoint but this is not currently functionality that is supported by the light wallet server.

      The caller evaluating this request on behalf of the wallet backend should respond to this request by detecting transactions involving the specified address within the provided block range; if using lightwalletd for access to chain data, this may be performed using the GetTaddressTxids RPC method. It should then call ZcashRustBackend.decryptAndStoreTransaction for each transaction so detected.

      public class TransactionDataRequest.Companion