Documentation
¶
Index ¶
- type DerivedAddress
- type Server
- func (s *Server) BumpFee(ctx context.Context, c *connect.Request[pb.BumpFeeRequest]) (*connect.Response[pb.BumpFeeResponse], error)
- func (s *Server) CheckChequeFunding(ctx context.Context, c *connect.Request[pb.CheckChequeFundingRequest]) (*connect.Response[pb.CheckChequeFundingResponse], error)
- func (s *Server) CreateBackup(ctx context.Context, _ *connect.Request[emptypb.Empty]) (*connect.Response[pb.CreateBackupResponse], error)
- func (s *Server) CreateBitcoinCoreWallet(ctx context.Context, c *connect.Request[pb.CreateBitcoinCoreWalletRequest]) (*connect.Response[pb.CreateBitcoinCoreWalletResponse], error)
- func (s *Server) CreateCheque(ctx context.Context, c *connect.Request[pb.CreateChequeRequest]) (*connect.Response[pb.CreateChequeResponse], error)
- func (s *Server) CreateSidechainDeposit(ctx context.Context, c *connect.Request[pb.CreateSidechainDepositRequest]) (*connect.Response[pb.CreateSidechainDepositResponse], error)
- func (s *Server) DeleteCheque(ctx context.Context, c *connect.Request[pb.DeleteChequeRequest]) (*connect.Response[emptypb.Empty], error)
- func (s *Server) GetBalance(ctx context.Context, c *connect.Request[pb.GetBalanceRequest]) (*connect.Response[pb.GetBalanceResponse], error)
- func (s *Server) GetCheque(ctx context.Context, c *connect.Request[pb.GetChequeRequest]) (*connect.Response[pb.GetChequeResponse], error)
- func (s *Server) GetChequePrivateKey(ctx context.Context, c *connect.Request[pb.GetChequePrivateKeyRequest]) (*connect.Response[pb.GetChequePrivateKeyResponse], error)
- func (s *Server) GetCoinSelectionStrategy(ctx context.Context, c *connect.Request[emptypb.Empty]) (*connect.Response[pb.GetCoinSelectionStrategyResponse], error)
- func (s *Server) GetNewAddress(ctx context.Context, c *connect.Request[pb.GetNewAddressRequest]) (*connect.Response[pb.GetNewAddressResponse], error)
- func (s *Server) GetStats(ctx context.Context, c *connect.Request[pb.GetStatsRequest]) (*connect.Response[pb.GetStatsResponse], error)
- func (s *Server) GetTransactionDetails(ctx context.Context, c *connect.Request[pb.GetTransactionDetailsRequest]) (*connect.Response[pb.GetTransactionDetailsResponse], error)
- func (s *Server) GetUTXODistribution(ctx context.Context, c *connect.Request[pb.GetUTXODistributionRequest]) (*connect.Response[pb.GetUTXODistributionResponse], error)
- func (s *Server) GetUTXOMetadata(ctx context.Context, c *connect.Request[pb.GetUTXOMetadataRequest]) (*connect.Response[pb.GetUTXOMetadataResponse], error)
- func (s *Server) IsWalletUnlocked(ctx context.Context, c *connect.Request[emptypb.Empty]) (*connect.Response[emptypb.Empty], error)
- func (s *Server) ListCheques(ctx context.Context, c *connect.Request[pb.ListChequesRequest]) (*connect.Response[pb.ListChequesResponse], error)
- func (s *Server) ListReceiveAddresses(ctx context.Context, c *connect.Request[pb.ListReceiveAddressesRequest]) (*connect.Response[pb.ListReceiveAddressesResponse], error)
- func (s *Server) ListSidechainDeposits(ctx context.Context, c *connect.Request[pb.ListSidechainDepositsRequest]) (*connect.Response[pb.ListSidechainDepositsResponse], error)
- func (s *Server) ListTransactions(ctx context.Context, c *connect.Request[pb.ListTransactionsRequest]) (*connect.Response[pb.ListTransactionsResponse], error)
- func (s *Server) ListUnspent(ctx context.Context, c *connect.Request[pb.ListUnspentRequest]) (*connect.Response[pb.ListUnspentResponse], error)
- func (s *Server) LockWallet(ctx context.Context, c *connect.Request[emptypb.Empty]) (*connect.Response[emptypb.Empty], error)
- func (s *Server) RestoreBackup(ctx context.Context, c *connect.Request[pb.RestoreBackupRequest]) (*connect.Response[emptypb.Empty], error)
- func (s *Server) SelectCoins(ctx context.Context, c *connect.Request[pb.SelectCoinsRequest]) (*connect.Response[pb.SelectCoinsResponse], error)
- func (s *Server) SendTransaction(ctx context.Context, c *connect.Request[pb.SendTransactionRequest]) (*connect.Response[pb.SendTransactionResponse], error)
- func (s *Server) SetCoinSelectionStrategy(ctx context.Context, c *connect.Request[pb.SetCoinSelectionStrategyRequest]) (*connect.Response[emptypb.Empty], error)
- func (s *Server) SetUTXOMetadata(ctx context.Context, c *connect.Request[pb.SetUTXOMetadataRequest]) (*connect.Response[emptypb.Empty], error)
- func (s *Server) SignMessage(ctx context.Context, c *connect.Request[pb.SignMessageRequest]) (*connect.Response[pb.SignMessageResponse], error)
- func (s *Server) SweepCheque(ctx context.Context, c *connect.Request[pb.SweepChequeRequest]) (*connect.Response[pb.SweepChequeResponse], error)
- func (s *Server) UnlockWallet(ctx context.Context, c *connect.Request[pb.UnlockWalletRequest]) (*connect.Response[emptypb.Empty], error)
- func (s *Server) ValidateBackup(ctx context.Context, c *connect.Request[pb.ValidateBackupRequest]) (*connect.Response[pb.ValidateBackupResponse], error)
- func (s *Server) VerifyMessage(ctx context.Context, c *connect.Request[pb.VerifyMessageRequest]) (*connect.Response[pb.VerifyMessageResponse], error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DerivedAddress ¶
DerivedAddress represents an address derived from a wallet seed
type Server ¶
type Server struct {
// contains filtered or unexported fields
}
func New ¶
func New( ctx context.Context, database *sql.DB, bitcoind *service.Service[corerpc.BitcoinServiceClient], wallet *service.Service[validatorrpc.WalletServiceClient], crypto *service.Service[cryptorpc.CryptoServiceClient], chequeEngine *engines.ChequeEngine, walletEngine *engines.WalletEngine, walletDir string, ) *Server
New creates a new Server and starts the balance update loop
func (*Server) BumpFee ¶
func (s *Server) BumpFee(ctx context.Context, c *connect.Request[pb.BumpFeeRequest]) (*connect.Response[pb.BumpFeeResponse], error)
BumpFee implements RBF (Replace-By-Fee) for unconfirmed transactions. Uses Bitcoin Core's bumpfee command with automatic fee estimation.
func (*Server) CheckChequeFunding ¶
func (s *Server) CheckChequeFunding(ctx context.Context, c *connect.Request[pb.CheckChequeFundingRequest]) (*connect.Response[pb.CheckChequeFundingResponse], error)
CheckChequeFunding implements walletv1connect.WalletServiceHandler.
func (*Server) CreateBackup ¶
func (s *Server) CreateBackup(ctx context.Context, _ *connect.Request[emptypb.Empty]) (*connect.Response[pb.CreateBackupResponse], error)
CreateBackup implements walletv1connect.WalletServiceHandler.
func (*Server) CreateBitcoinCoreWallet ¶
func (s *Server) CreateBitcoinCoreWallet(ctx context.Context, c *connect.Request[pb.CreateBitcoinCoreWalletRequest]) (*connect.Response[pb.CreateBitcoinCoreWalletResponse], error)
CreateBitcoinCoreWallet implements walletv1connect.WalletServiceHandler. Test endpoint to verify descriptor import to Bitcoin Core.
func (*Server) CreateCheque ¶
func (s *Server) CreateCheque(ctx context.Context, c *connect.Request[pb.CreateChequeRequest]) (*connect.Response[pb.CreateChequeResponse], error)
CreateCheque implements walletv1connect.WalletServiceHandler.
func (*Server) CreateSidechainDeposit ¶
func (s *Server) CreateSidechainDeposit(ctx context.Context, c *connect.Request[pb.CreateSidechainDepositRequest]) (*connect.Response[pb.CreateSidechainDepositResponse], error)
CreateSidechainDeposit implements walletv1connect.WalletServiceHandler.
func (*Server) DeleteCheque ¶
func (s *Server) DeleteCheque(ctx context.Context, c *connect.Request[pb.DeleteChequeRequest]) (*connect.Response[emptypb.Empty], error)
DeleteCheque implements walletv1connect.WalletServiceHandler.
func (*Server) GetBalance ¶
func (s *Server) GetBalance(ctx context.Context, c *connect.Request[pb.GetBalanceRequest]) (*connect.Response[pb.GetBalanceResponse], error)
GetBalance implements drivechainv1connect.DrivechainServiceHandler.
func (*Server) GetCheque ¶
func (s *Server) GetCheque(ctx context.Context, c *connect.Request[pb.GetChequeRequest]) (*connect.Response[pb.GetChequeResponse], error)
GetCheque implements walletv1connect.WalletServiceHandler.
func (*Server) GetChequePrivateKey ¶
func (s *Server) GetChequePrivateKey(ctx context.Context, c *connect.Request[pb.GetChequePrivateKeyRequest]) (*connect.Response[pb.GetChequePrivateKeyResponse], error)
GetChequePrivateKey implements walletv1connect.WalletServiceHandler.
func (*Server) GetCoinSelectionStrategy ¶
func (s *Server) GetCoinSelectionStrategy(ctx context.Context, c *connect.Request[emptypb.Empty]) (*connect.Response[pb.GetCoinSelectionStrategyResponse], error)
GetCoinSelectionStrategy implements walletv1connect.WalletServiceHandler.
func (*Server) GetNewAddress ¶
func (s *Server) GetNewAddress(ctx context.Context, c *connect.Request[pb.GetNewAddressRequest]) (*connect.Response[pb.GetNewAddressResponse], error)
GetNewAddress implements drivechainv1connect.DrivechainServiceHandler.
func (*Server) GetStats ¶
func (s *Server) GetStats(ctx context.Context, c *connect.Request[pb.GetStatsRequest]) (*connect.Response[pb.GetStatsResponse], error)
GetStats implements walletv1connect.WalletServiceHandler.
func (*Server) GetTransactionDetails ¶
func (s *Server) GetTransactionDetails(ctx context.Context, c *connect.Request[pb.GetTransactionDetailsRequest]) (*connect.Response[pb.GetTransactionDetailsResponse], error)
GetTransactionDetails implements walletv1connect.WalletServiceHandler. Returns enriched transaction details with resolved input values/addresses.
func (*Server) GetUTXODistribution ¶
func (s *Server) GetUTXODistribution(ctx context.Context, c *connect.Request[pb.GetUTXODistributionRequest]) (*connect.Response[pb.GetUTXODistributionResponse], error)
GetUTXODistribution implements walletv1connect.WalletServiceHandler. Returns UTXO distribution data for chart visualization.
func (*Server) GetUTXOMetadata ¶
func (s *Server) GetUTXOMetadata(ctx context.Context, c *connect.Request[pb.GetUTXOMetadataRequest]) (*connect.Response[pb.GetUTXOMetadataResponse], error)
GetUTXOMetadata implements walletv1connect.WalletServiceHandler.
func (*Server) IsWalletUnlocked ¶
func (s *Server) IsWalletUnlocked(ctx context.Context, c *connect.Request[emptypb.Empty]) (*connect.Response[emptypb.Empty], error)
IsWalletUnlocked implements walletv1connect.WalletServiceHandler.
func (*Server) ListCheques ¶
func (s *Server) ListCheques(ctx context.Context, c *connect.Request[pb.ListChequesRequest]) (*connect.Response[pb.ListChequesResponse], error)
ListCheques implements walletv1connect.WalletServiceHandler.
func (*Server) ListReceiveAddresses ¶
func (s *Server) ListReceiveAddresses(ctx context.Context, c *connect.Request[pb.ListReceiveAddressesRequest]) (*connect.Response[pb.ListReceiveAddressesResponse], error)
ListReceiveAddresses implements walletv1connect.WalletServiceHandler.
func (*Server) ListSidechainDeposits ¶
func (s *Server) ListSidechainDeposits(ctx context.Context, c *connect.Request[pb.ListSidechainDepositsRequest]) (*connect.Response[pb.ListSidechainDepositsResponse], error)
ListSidechainDeposits implements walletv1connect.WalletServiceHandler.
func (*Server) ListTransactions ¶
func (s *Server) ListTransactions(ctx context.Context, c *connect.Request[pb.ListTransactionsRequest]) (*connect.Response[pb.ListTransactionsResponse], error)
ListTransactions implements drivechainv1connect.DrivechainServiceHandler.
func (*Server) ListUnspent ¶
func (s *Server) ListUnspent(ctx context.Context, c *connect.Request[pb.ListUnspentRequest]) (*connect.Response[pb.ListUnspentResponse], error)
ListUnspent implements walletv1connect.WalletServiceHandler.
func (*Server) LockWallet ¶
func (s *Server) LockWallet(ctx context.Context, c *connect.Request[emptypb.Empty]) (*connect.Response[emptypb.Empty], error)
LockWallet implements walletv1connect.WalletServiceHandler.
func (*Server) RestoreBackup ¶
func (s *Server) RestoreBackup(ctx context.Context, c *connect.Request[pb.RestoreBackupRequest]) (*connect.Response[emptypb.Empty], error)
RestoreBackup implements walletv1connect.WalletServiceHandler.
func (*Server) SelectCoins ¶
func (s *Server) SelectCoins(ctx context.Context, c *connect.Request[pb.SelectCoinsRequest]) (*connect.Response[pb.SelectCoinsResponse], error)
SelectCoins implements walletv1connect.WalletServiceHandler.
func (*Server) SendTransaction ¶
func (s *Server) SendTransaction(ctx context.Context, c *connect.Request[pb.SendTransactionRequest]) (*connect.Response[pb.SendTransactionResponse], error)
SendTransaction implements drivechainv1connect.DrivechainServiceHandler.
func (*Server) SetCoinSelectionStrategy ¶
func (s *Server) SetCoinSelectionStrategy(ctx context.Context, c *connect.Request[pb.SetCoinSelectionStrategyRequest]) (*connect.Response[emptypb.Empty], error)
SetCoinSelectionStrategy implements walletv1connect.WalletServiceHandler.
func (*Server) SetUTXOMetadata ¶
func (s *Server) SetUTXOMetadata(ctx context.Context, c *connect.Request[pb.SetUTXOMetadataRequest]) (*connect.Response[emptypb.Empty], error)
SetUTXOMetadata implements walletv1connect.WalletServiceHandler.
func (*Server) SignMessage ¶
func (s *Server) SignMessage(ctx context.Context, c *connect.Request[pb.SignMessageRequest]) (*connect.Response[pb.SignMessageResponse], error)
SignMessage implements walletv1connect.WalletServiceHandler.
func (*Server) SweepCheque ¶
func (s *Server) SweepCheque(ctx context.Context, c *connect.Request[pb.SweepChequeRequest]) (*connect.Response[pb.SweepChequeResponse], error)
SweepCheque implements walletv1connect.WalletServiceHandler. Sweeps a cheque using its WIF private key to the destination address.
func (*Server) UnlockWallet ¶
func (s *Server) UnlockWallet(ctx context.Context, c *connect.Request[pb.UnlockWalletRequest]) (*connect.Response[emptypb.Empty], error)
UnlockWallet implements walletv1connect.WalletServiceHandler.
func (*Server) ValidateBackup ¶
func (s *Server) ValidateBackup(ctx context.Context, c *connect.Request[pb.ValidateBackupRequest]) (*connect.Response[pb.ValidateBackupResponse], error)
ValidateBackup implements walletv1connect.WalletServiceHandler.
func (*Server) VerifyMessage ¶
func (s *Server) VerifyMessage(ctx context.Context, c *connect.Request[pb.VerifyMessageRequest]) (*connect.Response[pb.VerifyMessageResponse], error)
VerifyMessage implements walletv1connect.WalletServiceHandler.