return ret;
}
+ /**
+ * Called to accept a request to open a channel after [`Event::OpenChannelRequest`] has been
+ * triggered.
+ *
+ * The `temporary_channel_id` parameter indicates which inbound channel should be accepted.
+ *
+ * For inbound channels, the `user_channel_id` parameter will be provided back in
+ * [`Event::ChannelClosed::user_channel_id`] to allow tracking of which events correspond
+ * with which `accept_inbound_channel` call.
+ *
+ * [`Event::OpenChannelRequest`]: events::Event::OpenChannelRequest
+ * [`Event::ChannelClosed::user_channel_id`]: events::Event::ChannelClosed::user_channel_id
+ */
+ public Result_NoneAPIErrorZ accept_inbound_channel(byte[] temporary_channel_id, long user_channel_id) {
+ long ret = bindings.ChannelManager_accept_inbound_channel(this.ptr, InternalUtils.check_arr_len(temporary_channel_id, 32), user_channel_id);
+ Reference.reachabilityFence(this);
+ Reference.reachabilityFence(temporary_channel_id);
+ Reference.reachabilityFence(user_channel_id);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ Result_NoneAPIErrorZ ret_hu_conv = Result_NoneAPIErrorZ.constr_from_ptr(ret);
+ return ret_hu_conv;
+ }
+
/**
* Gets a payment secret and payment hash for use in an invoice given to a third party wishing
* to pay us.
* Legacy version of [`create_inbound_payment`]. Use this method if you wish to share
* serialized state with LDK node(s) running 0.0.103 and earlier.
*
+ * May panic if `invoice_expiry_delta_secs` is greater than one year.
+ *
* # Note
* This method is deprecated and will be removed soon.
*
* If you need exact expiry semantics, you should enforce them upon receipt of
* [`PaymentReceived`].
*
- * May panic if `invoice_expiry_delta_secs` is greater than one year.
- *
* Note that invoices generated for inbound payments should have their `min_final_cltv_expiry`
* set to at least [`MIN_FINAL_CLTV_EXPIRY`].
*
* Legacy version of [`create_inbound_payment_for_hash`]. Use this method if you wish to share
* serialized state with LDK node(s) running 0.0.103 and earlier.
*
+ * May panic if `invoice_expiry_delta_secs` is greater than one year.
+ *
* # Note
* This method is deprecated and will be removed soon.
*
return ret_hu_conv;
}
+ /**
+ * Gets a fake short channel id for use in receiving [phantom node payments]. These fake scids
+ * are used when constructing the phantom invoice's route hints.
+ *
+ * [phantom node payments]: crate::chain::keysinterface::PhantomKeysManager
+ */
+ public long get_phantom_scid() {
+ long ret = bindings.ChannelManager_get_phantom_scid(this.ptr);
+ Reference.reachabilityFence(this);
+ return ret;
+ }
+
+ /**
+ * Gets route hints for use in receiving [phantom node payments].
+ *
+ * [phantom node payments]: crate::chain::keysinterface::PhantomKeysManager
+ */
+ public PhantomRouteHints get_phantom_route_hints() {
+ long ret = bindings.ChannelManager_get_phantom_route_hints(this.ptr);
+ Reference.reachabilityFence(this);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ PhantomRouteHints ret_hu_conv = null; if (ret < 0 || ret > 4096) { ret_hu_conv = new PhantomRouteHints(null, ret); }
+ ret_hu_conv.ptrs_to.add(this);
+ return ret_hu_conv;
+ }
+
/**
* Constructs a new MessageSendEventsProvider which calls the relevant methods on this_arg.
* This copies the `inner` pointer in this_arg and thus the returned MessageSendEventsProvider must be freed before this_arg is