1 package org.ldk.structs;
3 import org.ldk.impl.bindings;
4 import org.ldk.enums.*;
6 public class ChannelManager extends CommonBase {
7 ChannelManager(Object _dummy, long ptr) { super(ptr); }
8 @Override @SuppressWarnings("deprecation")
9 protected void finalize() throws Throwable {
11 bindings.ChannelManager_free(ptr);
14 public ChannelManager(LDKNetwork network, FeeEstimator fee_est, Watch chain_monitor, BroadcasterInterface tx_broadcaster, Logger logger, KeysInterface keys_manager, UserConfig config, long current_blockchain_height) {
15 super(bindings.ChannelManager_new(network, fee_est == null ? 0 : fee_est.ptr, chain_monitor == null ? 0 : chain_monitor.ptr, tx_broadcaster == null ? 0 : tx_broadcaster.ptr, logger == null ? 0 : logger.ptr, keys_manager == null ? 0 : keys_manager.ptr, config == null ? 0 : config.ptr & ~1, current_blockchain_height));
16 this.ptrs_to.add(fee_est);
17 this.ptrs_to.add(chain_monitor);
18 this.ptrs_to.add(tx_broadcaster);
19 this.ptrs_to.add(logger);
20 this.ptrs_to.add(keys_manager);
21 this.ptrs_to.add(config);
24 // Skipped ChannelManager_create_channel
25 // Skipped ChannelManager_list_channels
26 // Skipped ChannelManager_list_usable_channels
27 // Skipped ChannelManager_close_channel
28 public void force_close_channel(byte[] channel_id) {
29 bindings.ChannelManager_force_close_channel(this.ptr, channel_id);
32 public void force_close_all_channels() {
33 bindings.ChannelManager_force_close_all_channels(this.ptr);
36 // Skipped ChannelManager_send_payment
37 public void funding_transaction_generated(byte[] temporary_channel_id, OutPoint funding_txo) {
38 bindings.ChannelManager_funding_transaction_generated(this.ptr, temporary_channel_id, funding_txo == null ? 0 : funding_txo.ptr & ~1);
39 this.ptrs_to.add(funding_txo);
42 // Skipped ChannelManager_broadcast_node_announcement
43 public void process_pending_htlc_forwards() {
44 bindings.ChannelManager_process_pending_htlc_forwards(this.ptr);
47 public void timer_chan_freshness_every_min() {
48 bindings.ChannelManager_timer_chan_freshness_every_min(this.ptr);
51 public boolean fail_htlc_backwards(byte[] payment_hash, byte[] payment_secret) {
52 boolean ret = bindings.ChannelManager_fail_htlc_backwards(this.ptr, payment_hash, payment_secret);
56 public boolean claim_funds(byte[] payment_preimage, byte[] payment_secret, long expected_amount) {
57 boolean ret = bindings.ChannelManager_claim_funds(this.ptr, payment_preimage, payment_secret, expected_amount);
61 public byte[] get_our_node_id() {
62 byte[] ret = bindings.ChannelManager_get_our_node_id(this.ptr);
66 public void channel_monitor_updated(OutPoint funding_txo, long highest_applied_update_id) {
67 bindings.ChannelManager_channel_monitor_updated(this.ptr, funding_txo == null ? 0 : funding_txo.ptr & ~1, highest_applied_update_id);
68 this.ptrs_to.add(funding_txo);
71 public MessageSendEventsProvider as_MessageSendEventsProvider() {
72 MessageSendEventsProvider ret = new MessageSendEventsProvider(null, bindings.ChannelManager_as_MessageSendEventsProvider(this.ptr));
73 ret.ptrs_to.add(this);
77 public EventsProvider as_EventsProvider() {
78 EventsProvider ret = new EventsProvider(null, bindings.ChannelManager_as_EventsProvider(this.ptr));
79 ret.ptrs_to.add(this);
83 // Skipped ChannelManager_block_connected
84 public void block_disconnected(byte[] header) {
85 bindings.ChannelManager_block_disconnected(this.ptr, header);
88 public ChannelMessageHandler as_ChannelMessageHandler() {
89 ChannelMessageHandler ret = new ChannelMessageHandler(null, bindings.ChannelManager_as_ChannelMessageHandler(this.ptr));
90 ret.ptrs_to.add(this);