Channel.this - multiple declarations

Function Channel.this

Constructor for new channels.

this (
  FlashConfig flash_conf,
  ChannelConfig conf,
  in ref const(KeyPair) kp,
  PrivateNonce priv_nonce,
  PublicNonce peer_nonce,
  FlashAPI peer,
  Engine engine,
  ITaskManager taskman,
  TransactionResult delegate(in ref Transaction) txPublisher,
  void delegate(in ref PublicKey, in ref geod24.bitblob.BitBlob!(64L), in ref geod24.bitblob.BitBlob!(64L), in Amount, in Height, in ref OnionPacket) paymentRouter,
  @safe void delegate(PublicKey, geod24.bitblob.BitBlob!(64L), ChannelState, ErrorCode, Height) onChannelNotify,
  @safe void delegate(PublicKey, geod24.bitblob.BitBlob!(64L), geod24.bitblob.BitBlob!(64L), ErrorCode) onPaymentComplete,
  void delegate(PublicKey, in geod24.bitblob.BitBlob!(64L)[], in geod24.bitblob.BitBlob!(64L)[]) onUpdateComplete,
  FeeUTXOs delegate(ulong) getFeeUTXOs,
  ManagedDatabase db
);

Parameters

NameDescription
flash_conf the global flash configuration.
conf the static channel configuration.
kp the node's key-pair.
priv_nonce the nonce that is used for signing the first settle & trigger transactions.
peer_nonce the peer's public nonce for the first settle & trigger transactions.
peer a Flash API client instance
engine the execution engine
taskman used to spawn tasks
txPublisher used to publish transactions to the Agora network.
paymentRouter used to forward HTLCs to the next hop
onUpdateComplete called when a channel update has completed
getFeeUTXOs called to get UTXOs for on-chain fees
db the database to dump the channel metadata to

Function Channel.this

Constructor for loading existing channels from the DB.

this (
  in ref const(PublicKey) key,
  geod24.bitblob.BitBlob!(64L) chan_id,
  FlashConfig flash_conf,
  Engine engine,
  ITaskManager taskman,
  TransactionResult delegate(in ref Transaction) txPublisher,
  void delegate(in ref PublicKey, in ref geod24.bitblob.BitBlob!(64L), in ref geod24.bitblob.BitBlob!(64L), in Amount, in Height, in ref OnionPacket) paymentRouter,
  @safe void delegate(PublicKey, geod24.bitblob.BitBlob!(64L), ChannelState, ErrorCode, Height) onChannelNotify,
  @safe void delegate(PublicKey, geod24.bitblob.BitBlob!(64L), geod24.bitblob.BitBlob!(64L), ErrorCode) onPaymentComplete,
  void delegate(PublicKey, in geod24.bitblob.BitBlob!(64L)[], in geod24.bitblob.BitBlob!(64L)[]) onUpdateComplete,
  FeeUTXOs delegate(ulong) getFeeUTXOs,
  FlashAPI delegate(in ref PublicKey, core.time.Duration, Address) makeFlashClient,
  ManagedDatabase db
);

Parameters

NameDescription
chan_id the channel ID to load from the DB.
engine the execution engine
taskman used to spawn tasks
txPublisher used to publish transactions to the Agora network.
paymentRouter used to forward HTLCs to the next hop
onUpdateComplete called when a channel update has completed
getFeeUTXOs called to get UTXOs for on-chain fees
db the database to load the channel metadata from
makeFlashClient delegate to get the FlashAPI client from