Module: BSV::Wallet::Interface::BroadcastQueue
- Included in:
- BroadcastQueue::Inline
- Defined in:
- lib/bsv/wallet/interface/broadcast_queue.rb
Overview
Duck-typed broadcast queue interface for wallet transaction dispatch.
Include this module in broadcast queue adapters and override the methods your adapter supports.
Instance Method Summary collapse
-
#async? ⇒ Boolean
Returns
falseby default (synchronous execution). -
#broadcast_enabled? ⇒ Boolean
Returns
falseby default. -
#enqueue(_payload) ⇒ Hash
Enqueues a transaction for broadcast and state promotion.
-
#status(_txid) ⇒ String?
Returns the broadcast status for a previously enqueued transaction.
Instance Method Details
#async? ⇒ Boolean
Returns false by default (synchronous execution). Override to return true for async adapters.
21 22 23 |
# File 'lib/bsv/wallet/interface/broadcast_queue.rb', line 21 def async? false end |
#broadcast_enabled? ⇒ Boolean
Returns false by default. Override in adapters that hold a broadcaster reference.
27 28 29 |
# File 'lib/bsv/wallet/interface/broadcast_queue.rb', line 27 def broadcast_enabled? false end |
#enqueue(_payload) ⇒ Hash
Enqueues a transaction for broadcast and state promotion.
15 16 17 |
# File 'lib/bsv/wallet/interface/broadcast_queue.rb', line 15 def enqueue(_payload) raise NotImplementedError, "#{self.class}#enqueue not implemented" end |
#status(_txid) ⇒ String?
Returns the broadcast status for a previously enqueued transaction.
35 36 37 |
# File 'lib/bsv/wallet/interface/broadcast_queue.rb', line 35 def status(_txid) raise NotImplementedError, "#{self.class}#status not implemented" end |