import org.ldk.enums.*;
import org.ldk.util.*;
import java.util.Arrays;
+import java.lang.ref.Reference;
import javax.annotation.Nullable;
if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendReplyChannelRange.class) {
return new SendReplyChannelRange(ptr, (bindings.LDKMessageSendEvent.SendReplyChannelRange)raw_val);
}
+ if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendGossipTimestampFilter.class) {
+ return new SendGossipTimestampFilter(ptr, (bindings.LDKMessageSendEvent.SendGossipTimestampFilter)raw_val);
+ }
assert false; return null; // Unreachable without extending the (internal) bindings interface
}
/**
* The message which should be sent.
*/
- public final AcceptChannel msg;
+ public final org.ldk.structs.AcceptChannel msg;
private SendAcceptChannel(long ptr, bindings.LDKMessageSendEvent.SendAcceptChannel obj) {
super(null, ptr);
this.node_id = obj.node_id;
/**
* The message which should be sent.
*/
- public final OpenChannel msg;
+ public final org.ldk.structs.OpenChannel msg;
private SendOpenChannel(long ptr, bindings.LDKMessageSendEvent.SendOpenChannel obj) {
super(null, ptr);
this.node_id = obj.node_id;
/**
* The message which should be sent.
*/
- public final FundingCreated msg;
+ public final org.ldk.structs.FundingCreated msg;
private SendFundingCreated(long ptr, bindings.LDKMessageSendEvent.SendFundingCreated obj) {
super(null, ptr);
this.node_id = obj.node_id;
/**
* The message which should be sent.
*/
- public final FundingSigned msg;
+ public final org.ldk.structs.FundingSigned msg;
private SendFundingSigned(long ptr, bindings.LDKMessageSendEvent.SendFundingSigned obj) {
super(null, ptr);
this.node_id = obj.node_id;
/**
* The funding_locked message which should be sent.
*/
- public final FundingLocked msg;
+ public final org.ldk.structs.FundingLocked msg;
private SendFundingLocked(long ptr, bindings.LDKMessageSendEvent.SendFundingLocked obj) {
super(null, ptr);
this.node_id = obj.node_id;
/**
* The announcement_signatures message which should be sent.
*/
- public final AnnouncementSignatures msg;
+ public final org.ldk.structs.AnnouncementSignatures msg;
private SendAnnouncementSignatures(long ptr, bindings.LDKMessageSendEvent.SendAnnouncementSignatures obj) {
super(null, ptr);
this.node_id = obj.node_id;
/**
* The update messages which should be sent. ALL messages in the struct should be sent!
*/
- public final CommitmentUpdate updates;
+ public final org.ldk.structs.CommitmentUpdate updates;
private UpdateHTLCs(long ptr, bindings.LDKMessageSendEvent.UpdateHTLCs obj) {
super(null, ptr);
this.node_id = obj.node_id;
/**
* The message which should be sent.
*/
- public final RevokeAndACK msg;
+ public final org.ldk.structs.RevokeAndACK msg;
private SendRevokeAndACK(long ptr, bindings.LDKMessageSendEvent.SendRevokeAndACK obj) {
super(null, ptr);
this.node_id = obj.node_id;
/**
* The message which should be sent.
*/
- public final ClosingSigned msg;
+ public final org.ldk.structs.ClosingSigned msg;
private SendClosingSigned(long ptr, bindings.LDKMessageSendEvent.SendClosingSigned obj) {
super(null, ptr);
this.node_id = obj.node_id;
/**
* The message which should be sent.
*/
- public final Shutdown msg;
+ public final org.ldk.structs.Shutdown msg;
private SendShutdown(long ptr, bindings.LDKMessageSendEvent.SendShutdown obj) {
super(null, ptr);
this.node_id = obj.node_id;
/**
* The message which should be sent.
*/
- public final ChannelReestablish msg;
+ public final org.ldk.structs.ChannelReestablish msg;
private SendChannelReestablish(long ptr, bindings.LDKMessageSendEvent.SendChannelReestablish obj) {
super(null, ptr);
this.node_id = obj.node_id;
/**
* The channel_announcement which should be sent.
*/
- public final ChannelAnnouncement msg;
+ public final org.ldk.structs.ChannelAnnouncement msg;
/**
* The followup channel_update which should be sent.
*/
- public final ChannelUpdate update_msg;
+ public final org.ldk.structs.ChannelUpdate update_msg;
private BroadcastChannelAnnouncement(long ptr, bindings.LDKMessageSendEvent.BroadcastChannelAnnouncement obj) {
super(null, ptr);
long msg = obj.msg;
/**
* The node_announcement which should be sent.
*/
- public final NodeAnnouncement msg;
+ public final org.ldk.structs.NodeAnnouncement msg;
private BroadcastNodeAnnouncement(long ptr, bindings.LDKMessageSendEvent.BroadcastNodeAnnouncement obj) {
super(null, ptr);
long msg = obj.msg;
/**
* The channel_update which should be sent.
*/
- public final ChannelUpdate msg;
+ public final org.ldk.structs.ChannelUpdate msg;
private BroadcastChannelUpdate(long ptr, bindings.LDKMessageSendEvent.BroadcastChannelUpdate obj) {
super(null, ptr);
long msg = obj.msg;
/**
* The channel_update which should be sent.
*/
- public final ChannelUpdate msg;
+ public final org.ldk.structs.ChannelUpdate msg;
private SendChannelUpdate(long ptr, bindings.LDKMessageSendEvent.SendChannelUpdate obj) {
super(null, ptr);
this.node_id = obj.node_id;
/**
* The action which should be taken.
*/
- public final ErrorAction action;
+ public final org.ldk.structs.ErrorAction action;
private HandleError(long ptr, bindings.LDKMessageSendEvent.HandleError obj) {
super(null, ptr);
this.node_id = obj.node_id;
long action = obj.action;
- ErrorAction action_hu_conv = ErrorAction.constr_from_ptr(action);
+ org.ldk.structs.ErrorAction action_hu_conv = org.ldk.structs.ErrorAction.constr_from_ptr(action);
action_hu_conv.ptrs_to.add(this);
this.action = action_hu_conv;
}
/**
* The query_channel_range which should be sent.
*/
- public final QueryChannelRange msg;
+ public final org.ldk.structs.QueryChannelRange msg;
private SendChannelRangeQuery(long ptr, bindings.LDKMessageSendEvent.SendChannelRangeQuery obj) {
super(null, ptr);
this.node_id = obj.node_id;
/**
* The query_short_channel_ids which should be sent.
*/
- public final QueryShortChannelIds msg;
+ public final org.ldk.structs.QueryShortChannelIds msg;
private SendShortIdsQuery(long ptr, bindings.LDKMessageSendEvent.SendShortIdsQuery obj) {
super(null, ptr);
this.node_id = obj.node_id;
/**
* The reply_channel_range which should be sent.
*/
- public final ReplyChannelRange msg;
+ public final org.ldk.structs.ReplyChannelRange msg;
private SendReplyChannelRange(long ptr, bindings.LDKMessageSendEvent.SendReplyChannelRange obj) {
super(null, ptr);
this.node_id = obj.node_id;
this.msg = msg_hu_conv;
}
}
+ /**
+ * Sends a timestamp filter for inbound gossip. This should be sent on each new connection to
+ * enable receiving gossip messages from the peer.
+ */
+ public final static class SendGossipTimestampFilter extends MessageSendEvent {
+ /**
+ * The node_id of this message recipient
+ */
+ public final byte[] node_id;
+ /**
+ * The gossip_timestamp_filter which should be sent.
+ */
+ public final org.ldk.structs.GossipTimestampFilter msg;
+ private SendGossipTimestampFilter(long ptr, bindings.LDKMessageSendEvent.SendGossipTimestampFilter obj) {
+ super(null, ptr);
+ this.node_id = obj.node_id;
+ long msg = obj.msg;
+ GossipTimestampFilter msg_hu_conv = null; if (msg < 0 || msg > 4096) { msg_hu_conv = new GossipTimestampFilter(null, msg); }
+ msg_hu_conv.ptrs_to.add(this);
+ this.msg = msg_hu_conv;
+ }
+ }
long clone_ptr() {
long ret = bindings.MessageSendEvent_clone_ptr(this.ptr);
+ Reference.reachabilityFence(this);
return ret;
}
*/
public MessageSendEvent clone() {
long ret = bindings.MessageSendEvent_clone(this.ptr);
+ Reference.reachabilityFence(this);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(this);
return ret_hu_conv;
}
*/
public static MessageSendEvent send_accept_channel(byte[] node_id, AcceptChannel msg) {
long ret = bindings.MessageSendEvent_send_accept_channel(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent send_open_channel(byte[] node_id, OpenChannel msg) {
long ret = bindings.MessageSendEvent_send_open_channel(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent send_funding_created(byte[] node_id, FundingCreated msg) {
long ret = bindings.MessageSendEvent_send_funding_created(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent send_funding_signed(byte[] node_id, FundingSigned msg) {
long ret = bindings.MessageSendEvent_send_funding_signed(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent send_funding_locked(byte[] node_id, FundingLocked msg) {
long ret = bindings.MessageSendEvent_send_funding_locked(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent send_announcement_signatures(byte[] node_id, AnnouncementSignatures msg) {
long ret = bindings.MessageSendEvent_send_announcement_signatures(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent update_htlcs(byte[] node_id, CommitmentUpdate updates) {
long ret = bindings.MessageSendEvent_update_htlcs(InternalUtils.check_arr_len(node_id, 33), updates == null ? 0 : updates.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(updates);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent send_revoke_and_ack(byte[] node_id, RevokeAndACK msg) {
long ret = bindings.MessageSendEvent_send_revoke_and_ack(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent send_closing_signed(byte[] node_id, ClosingSigned msg) {
long ret = bindings.MessageSendEvent_send_closing_signed(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent send_shutdown(byte[] node_id, Shutdown msg) {
long ret = bindings.MessageSendEvent_send_shutdown(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent send_channel_reestablish(byte[] node_id, ChannelReestablish msg) {
long ret = bindings.MessageSendEvent_send_channel_reestablish(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent broadcast_channel_announcement(ChannelAnnouncement msg, ChannelUpdate update_msg) {
long ret = bindings.MessageSendEvent_broadcast_channel_announcement(msg == null ? 0 : msg.ptr & ~1, update_msg == null ? 0 : update_msg.ptr & ~1);
+ Reference.reachabilityFence(msg);
+ Reference.reachabilityFence(update_msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent broadcast_node_announcement(NodeAnnouncement msg) {
long ret = bindings.MessageSendEvent_broadcast_node_announcement(msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent broadcast_channel_update(ChannelUpdate msg) {
long ret = bindings.MessageSendEvent_broadcast_channel_update(msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent send_channel_update(byte[] node_id, ChannelUpdate msg) {
long ret = bindings.MessageSendEvent_send_channel_update(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent handle_error(byte[] node_id, ErrorAction action) {
long ret = bindings.MessageSendEvent_handle_error(InternalUtils.check_arr_len(node_id, 33), action.ptr);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(action);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent send_channel_range_query(byte[] node_id, QueryChannelRange msg) {
long ret = bindings.MessageSendEvent_send_channel_range_query(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent send_short_ids_query(byte[] node_id, QueryShortChannelIds msg) {
long ret = bindings.MessageSendEvent_send_short_ids_query(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}
*/
public static MessageSendEvent send_reply_channel_range(byte[] node_id, ReplyChannelRange msg) {
long ret = bindings.MessageSendEvent_send_reply_channel_range(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
+ if (ret >= 0 && ret <= 4096) { return null; }
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
+ ret_hu_conv.ptrs_to.add(ret_hu_conv);
+ return ret_hu_conv;
+ }
+
+ /**
+ * Utility method to constructs a new SendGossipTimestampFilter-variant MessageSendEvent
+ */
+ public static MessageSendEvent send_gossip_timestamp_filter(byte[] node_id, GossipTimestampFilter msg) {
+ long ret = bindings.MessageSendEvent_send_gossip_timestamp_filter(InternalUtils.check_arr_len(node_id, 33), msg == null ? 0 : msg.ptr & ~1);
+ Reference.reachabilityFence(node_id);
+ Reference.reachabilityFence(msg);
if (ret >= 0 && ret <= 4096) { return null; }
- MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
+ org.ldk.structs.MessageSendEvent ret_hu_conv = org.ldk.structs.MessageSendEvent.constr_from_ptr(ret);
ret_hu_conv.ptrs_to.add(ret_hu_conv);
return ret_hu_conv;
}