if (ptr != 0) { bindings.ChannelManager_free(ptr); }
}
- public static ChannelManager constructor_new(LDKNetwork network, FeeEstimator fee_est, Watch chain_monitor, BroadcasterInterface tx_broadcaster, Logger logger, KeysInterface keys_manager, UserConfig config, long current_blockchain_height) {
- long ret = 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);
+ public static ChannelManager constructor_new(FeeEstimator fee_est, Watch chain_monitor, BroadcasterInterface tx_broadcaster, Logger logger, KeysInterface keys_manager, UserConfig config, LDKNetwork params_network_arg, byte[] params_latest_hash_arg, long params_latest_height_arg) {
+ long ret = bindings.ChannelManager_new(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, bindings.ChainParameters_new(params_network_arg, params_latest_hash_arg, params_latest_height_arg));
ChannelManager ret_hu_conv = new ChannelManager(null, ret);
+ ret_hu_conv.ptrs_to.add(ret_hu_conv);
ret_hu_conv.ptrs_to.add(fee_est);
ret_hu_conv.ptrs_to.add(chain_monitor);
ret_hu_conv.ptrs_to.add(tx_broadcaster);
public ChannelDetails[] list_channels() {
long[] ret = bindings.ChannelManager_list_channels(this.ptr);
- ChannelDetails[] arr_conv_16_arr = new ChannelDetails[ret.length];
+ ChannelDetails[] ret_conv_16_arr = new ChannelDetails[ret.length];
for (int q = 0; q < ret.length; q++) {
- long arr_conv_16 = ret[q];
- ChannelDetails arr_conv_16_hu_conv = new ChannelDetails(null, arr_conv_16);
- arr_conv_16_arr[q] = arr_conv_16_hu_conv;
+ long ret_conv_16 = ret[q];
+ ChannelDetails ret_conv_16_hu_conv = new ChannelDetails(null, ret_conv_16);
+ ret_conv_16_hu_conv.ptrs_to.add(this);
+ ret_conv_16_arr[q] = ret_conv_16_hu_conv;
}
- return arr_conv_16_arr;
+ return ret_conv_16_arr;
}
public ChannelDetails[] list_usable_channels() {
long[] ret = bindings.ChannelManager_list_usable_channels(this.ptr);
- ChannelDetails[] arr_conv_16_arr = new ChannelDetails[ret.length];
+ ChannelDetails[] ret_conv_16_arr = new ChannelDetails[ret.length];
for (int q = 0; q < ret.length; q++) {
- long arr_conv_16 = ret[q];
- ChannelDetails arr_conv_16_hu_conv = new ChannelDetails(null, arr_conv_16);
- arr_conv_16_arr[q] = arr_conv_16_hu_conv;
+ long ret_conv_16 = ret[q];
+ ChannelDetails ret_conv_16_hu_conv = new ChannelDetails(null, ret_conv_16);
+ ret_conv_16_hu_conv.ptrs_to.add(this);
+ ret_conv_16_arr[q] = ret_conv_16_hu_conv;
}
- return arr_conv_16_arr;
+ return ret_conv_16_arr;
}
public Result_NoneAPIErrorZ close_channel(byte[] channel_id) {
return ret_hu_conv;
}
- public void force_close_channel(byte[] channel_id) {
- bindings.ChannelManager_force_close_channel(this.ptr, channel_id);
+ public Result_NoneAPIErrorZ force_close_channel(byte[] channel_id) {
+ long ret = bindings.ChannelManager_force_close_channel(this.ptr, channel_id);
+ Result_NoneAPIErrorZ ret_hu_conv = Result_NoneAPIErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
}
public void force_close_all_channels() {
}
public void broadcast_node_announcement(byte[] rgb, byte[] alias, NetAddress[] addresses) {
- bindings.ChannelManager_broadcast_node_announcement(this.ptr, rgb, alias, Arrays.stream(addresses).mapToLong(arr_conv_12 -> arr_conv_12.ptr).toArray());
+ bindings.ChannelManager_broadcast_node_announcement(this.ptr, rgb, alias, Arrays.stream(addresses).mapToLong(addresses_conv_12 -> addresses_conv_12.ptr).toArray());
/* TODO 2 NetAddress */;
}
return ret_hu_conv;
}
+ public Listen as_Listen() {
+ long ret = bindings.ChannelManager_as_Listen(this.ptr);
+ Listen ret_hu_conv = new Listen(null, ret);
+ ret_hu_conv.ptrs_to.add(this);
+ return ret_hu_conv;
+ }
+
public void block_connected(byte[] header, TwoTuple<Long, byte[]>[] txdata, int height) {
- bindings.ChannelManager_block_connected(this.ptr, header, Arrays.stream(txdata).mapToLong(arr_conv_24 -> bindings.C2Tuple_usizeTransactionZ_new(arr_conv_24.a, arr_conv_24.b)).toArray(), height);
+ bindings.ChannelManager_block_connected(this.ptr, header, Arrays.stream(txdata).mapToLong(txdata_conv_24 -> bindings.C2Tuple_usizeTransactionZ_new(txdata_conv_24.a, txdata_conv_24.b)).toArray(), height);
/* TODO 2 TwoTuple<Long, byte[]> */;
}
bindings.ChannelManager_block_disconnected(this.ptr, header);
}
+ public void await_persistable_update() {
+ bindings.ChannelManager_await_persistable_update(this.ptr);
+ }
+
public ChannelMessageHandler as_ChannelMessageHandler() {
long ret = bindings.ChannelManager_as_ChannelMessageHandler(this.ptr);
ChannelMessageHandler ret_hu_conv = new ChannelMessageHandler(null, ret);