1 package org.ldk.structs;
3 import org.ldk.impl.bindings;
4 import org.ldk.enums.*;
6 import java.util.Arrays;
7 import javax.annotation.Nullable;
11 * An event generated by ChannelManager which indicates a message should be sent to a peer (or
12 * broadcast to most peers).
13 * These events are handled by PeerManager::process_events if you are using a PeerManager.
15 @SuppressWarnings("unchecked") // We correctly assign various generic arrays
16 public class MessageSendEvent extends CommonBase {
17 private MessageSendEvent(Object _dummy, long ptr) { super(ptr); }
18 @Override @SuppressWarnings("deprecation")
19 protected void finalize() throws Throwable {
21 if (ptr != 0) { bindings.MessageSendEvent_free(ptr); }
23 static MessageSendEvent constr_from_ptr(long ptr) {
24 bindings.LDKMessageSendEvent raw_val = bindings.LDKMessageSendEvent_ref_from_ptr(ptr);
25 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendAcceptChannel.class) {
26 return new SendAcceptChannel(ptr, (bindings.LDKMessageSendEvent.SendAcceptChannel)raw_val);
28 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendOpenChannel.class) {
29 return new SendOpenChannel(ptr, (bindings.LDKMessageSendEvent.SendOpenChannel)raw_val);
31 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendFundingCreated.class) {
32 return new SendFundingCreated(ptr, (bindings.LDKMessageSendEvent.SendFundingCreated)raw_val);
34 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendFundingSigned.class) {
35 return new SendFundingSigned(ptr, (bindings.LDKMessageSendEvent.SendFundingSigned)raw_val);
37 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendFundingLocked.class) {
38 return new SendFundingLocked(ptr, (bindings.LDKMessageSendEvent.SendFundingLocked)raw_val);
40 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendAnnouncementSignatures.class) {
41 return new SendAnnouncementSignatures(ptr, (bindings.LDKMessageSendEvent.SendAnnouncementSignatures)raw_val);
43 if (raw_val.getClass() == bindings.LDKMessageSendEvent.UpdateHTLCs.class) {
44 return new UpdateHTLCs(ptr, (bindings.LDKMessageSendEvent.UpdateHTLCs)raw_val);
46 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendRevokeAndACK.class) {
47 return new SendRevokeAndACK(ptr, (bindings.LDKMessageSendEvent.SendRevokeAndACK)raw_val);
49 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendClosingSigned.class) {
50 return new SendClosingSigned(ptr, (bindings.LDKMessageSendEvent.SendClosingSigned)raw_val);
52 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendShutdown.class) {
53 return new SendShutdown(ptr, (bindings.LDKMessageSendEvent.SendShutdown)raw_val);
55 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendChannelReestablish.class) {
56 return new SendChannelReestablish(ptr, (bindings.LDKMessageSendEvent.SendChannelReestablish)raw_val);
58 if (raw_val.getClass() == bindings.LDKMessageSendEvent.BroadcastChannelAnnouncement.class) {
59 return new BroadcastChannelAnnouncement(ptr, (bindings.LDKMessageSendEvent.BroadcastChannelAnnouncement)raw_val);
61 if (raw_val.getClass() == bindings.LDKMessageSendEvent.BroadcastNodeAnnouncement.class) {
62 return new BroadcastNodeAnnouncement(ptr, (bindings.LDKMessageSendEvent.BroadcastNodeAnnouncement)raw_val);
64 if (raw_val.getClass() == bindings.LDKMessageSendEvent.BroadcastChannelUpdate.class) {
65 return new BroadcastChannelUpdate(ptr, (bindings.LDKMessageSendEvent.BroadcastChannelUpdate)raw_val);
67 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendChannelUpdate.class) {
68 return new SendChannelUpdate(ptr, (bindings.LDKMessageSendEvent.SendChannelUpdate)raw_val);
70 if (raw_val.getClass() == bindings.LDKMessageSendEvent.HandleError.class) {
71 return new HandleError(ptr, (bindings.LDKMessageSendEvent.HandleError)raw_val);
73 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendChannelRangeQuery.class) {
74 return new SendChannelRangeQuery(ptr, (bindings.LDKMessageSendEvent.SendChannelRangeQuery)raw_val);
76 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendShortIdsQuery.class) {
77 return new SendShortIdsQuery(ptr, (bindings.LDKMessageSendEvent.SendShortIdsQuery)raw_val);
79 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendReplyChannelRange.class) {
80 return new SendReplyChannelRange(ptr, (bindings.LDKMessageSendEvent.SendReplyChannelRange)raw_val);
82 assert false; return null; // Unreachable without extending the (internal) bindings interface
85 public final static class SendAcceptChannel extends MessageSendEvent {
87 * The node_id of the node which should receive this message
89 public final byte[] node_id;
91 * The message which should be sent.
93 public final AcceptChannel msg;
94 private SendAcceptChannel(long ptr, bindings.LDKMessageSendEvent.SendAcceptChannel obj) {
96 this.node_id = obj.node_id;
98 AcceptChannel msg_hu_conv = new AcceptChannel(null, msg);
99 msg_hu_conv.ptrs_to.add(this);
100 this.msg = msg_hu_conv;
103 public final static class SendOpenChannel extends MessageSendEvent {
105 * The node_id of the node which should receive this message
107 public final byte[] node_id;
109 * The message which should be sent.
111 public final OpenChannel msg;
112 private SendOpenChannel(long ptr, bindings.LDKMessageSendEvent.SendOpenChannel obj) {
114 this.node_id = obj.node_id;
116 OpenChannel msg_hu_conv = new OpenChannel(null, msg);
117 msg_hu_conv.ptrs_to.add(this);
118 this.msg = msg_hu_conv;
121 public final static class SendFundingCreated extends MessageSendEvent {
123 * The node_id of the node which should receive this message
125 public final byte[] node_id;
127 * The message which should be sent.
129 public final FundingCreated msg;
130 private SendFundingCreated(long ptr, bindings.LDKMessageSendEvent.SendFundingCreated obj) {
132 this.node_id = obj.node_id;
134 FundingCreated msg_hu_conv = new FundingCreated(null, msg);
135 msg_hu_conv.ptrs_to.add(this);
136 this.msg = msg_hu_conv;
139 public final static class SendFundingSigned extends MessageSendEvent {
141 * The node_id of the node which should receive this message
143 public final byte[] node_id;
145 * The message which should be sent.
147 public final FundingSigned msg;
148 private SendFundingSigned(long ptr, bindings.LDKMessageSendEvent.SendFundingSigned obj) {
150 this.node_id = obj.node_id;
152 FundingSigned msg_hu_conv = new FundingSigned(null, msg);
153 msg_hu_conv.ptrs_to.add(this);
154 this.msg = msg_hu_conv;
157 public final static class SendFundingLocked extends MessageSendEvent {
159 * The node_id of the node which should receive these message(s)
161 public final byte[] node_id;
163 * The funding_locked message which should be sent.
165 public final FundingLocked msg;
166 private SendFundingLocked(long ptr, bindings.LDKMessageSendEvent.SendFundingLocked obj) {
168 this.node_id = obj.node_id;
170 FundingLocked msg_hu_conv = new FundingLocked(null, msg);
171 msg_hu_conv.ptrs_to.add(this);
172 this.msg = msg_hu_conv;
175 public final static class SendAnnouncementSignatures extends MessageSendEvent {
177 * The node_id of the node which should receive these message(s)
179 public final byte[] node_id;
181 * The announcement_signatures message which should be sent.
183 public final AnnouncementSignatures msg;
184 private SendAnnouncementSignatures(long ptr, bindings.LDKMessageSendEvent.SendAnnouncementSignatures obj) {
186 this.node_id = obj.node_id;
188 AnnouncementSignatures msg_hu_conv = new AnnouncementSignatures(null, msg);
189 msg_hu_conv.ptrs_to.add(this);
190 this.msg = msg_hu_conv;
193 public final static class UpdateHTLCs extends MessageSendEvent {
195 * The node_id of the node which should receive these message(s)
197 public final byte[] node_id;
199 * The update messages which should be sent. ALL messages in the struct should be sent!
201 public final CommitmentUpdate updates;
202 private UpdateHTLCs(long ptr, bindings.LDKMessageSendEvent.UpdateHTLCs obj) {
204 this.node_id = obj.node_id;
205 long updates = obj.updates;
206 CommitmentUpdate updates_hu_conv = new CommitmentUpdate(null, updates);
207 updates_hu_conv.ptrs_to.add(this);
208 this.updates = updates_hu_conv;
211 public final static class SendRevokeAndACK extends MessageSendEvent {
213 * The node_id of the node which should receive this message
215 public final byte[] node_id;
217 * The message which should be sent.
219 public final RevokeAndACK msg;
220 private SendRevokeAndACK(long ptr, bindings.LDKMessageSendEvent.SendRevokeAndACK obj) {
222 this.node_id = obj.node_id;
224 RevokeAndACK msg_hu_conv = new RevokeAndACK(null, msg);
225 msg_hu_conv.ptrs_to.add(this);
226 this.msg = msg_hu_conv;
229 public final static class SendClosingSigned extends MessageSendEvent {
231 * The node_id of the node which should receive this message
233 public final byte[] node_id;
235 * The message which should be sent.
237 public final ClosingSigned msg;
238 private SendClosingSigned(long ptr, bindings.LDKMessageSendEvent.SendClosingSigned obj) {
240 this.node_id = obj.node_id;
242 ClosingSigned msg_hu_conv = new ClosingSigned(null, msg);
243 msg_hu_conv.ptrs_to.add(this);
244 this.msg = msg_hu_conv;
247 public final static class SendShutdown extends MessageSendEvent {
249 * The node_id of the node which should receive this message
251 public final byte[] node_id;
253 * The message which should be sent.
255 public final Shutdown msg;
256 private SendShutdown(long ptr, bindings.LDKMessageSendEvent.SendShutdown obj) {
258 this.node_id = obj.node_id;
260 Shutdown msg_hu_conv = new Shutdown(null, msg);
261 msg_hu_conv.ptrs_to.add(this);
262 this.msg = msg_hu_conv;
265 public final static class SendChannelReestablish extends MessageSendEvent {
267 * The node_id of the node which should receive this message
269 public final byte[] node_id;
271 * The message which should be sent.
273 public final ChannelReestablish msg;
274 private SendChannelReestablish(long ptr, bindings.LDKMessageSendEvent.SendChannelReestablish obj) {
276 this.node_id = obj.node_id;
278 ChannelReestablish msg_hu_conv = new ChannelReestablish(null, msg);
279 msg_hu_conv.ptrs_to.add(this);
280 this.msg = msg_hu_conv;
283 public final static class BroadcastChannelAnnouncement extends MessageSendEvent {
285 * The channel_announcement which should be sent.
287 public final ChannelAnnouncement msg;
289 * The followup channel_update which should be sent.
291 public final ChannelUpdate update_msg;
292 private BroadcastChannelAnnouncement(long ptr, bindings.LDKMessageSendEvent.BroadcastChannelAnnouncement obj) {
295 ChannelAnnouncement msg_hu_conv = new ChannelAnnouncement(null, msg);
296 msg_hu_conv.ptrs_to.add(this);
297 this.msg = msg_hu_conv;
298 long update_msg = obj.update_msg;
299 ChannelUpdate update_msg_hu_conv = new ChannelUpdate(null, update_msg);
300 update_msg_hu_conv.ptrs_to.add(this);
301 this.update_msg = update_msg_hu_conv;
304 public final static class BroadcastNodeAnnouncement extends MessageSendEvent {
306 * The node_announcement which should be sent.
308 public final NodeAnnouncement msg;
309 private BroadcastNodeAnnouncement(long ptr, bindings.LDKMessageSendEvent.BroadcastNodeAnnouncement obj) {
312 NodeAnnouncement msg_hu_conv = new NodeAnnouncement(null, msg);
313 msg_hu_conv.ptrs_to.add(this);
314 this.msg = msg_hu_conv;
317 public final static class BroadcastChannelUpdate extends MessageSendEvent {
319 * The channel_update which should be sent.
321 public final ChannelUpdate msg;
322 private BroadcastChannelUpdate(long ptr, bindings.LDKMessageSendEvent.BroadcastChannelUpdate obj) {
325 ChannelUpdate msg_hu_conv = new ChannelUpdate(null, msg);
326 msg_hu_conv.ptrs_to.add(this);
327 this.msg = msg_hu_conv;
330 public final static class SendChannelUpdate extends MessageSendEvent {
332 * The node_id of the node which should receive this message
334 public final byte[] node_id;
336 * The channel_update which should be sent.
338 public final ChannelUpdate msg;
339 private SendChannelUpdate(long ptr, bindings.LDKMessageSendEvent.SendChannelUpdate obj) {
341 this.node_id = obj.node_id;
343 ChannelUpdate msg_hu_conv = new ChannelUpdate(null, msg);
344 msg_hu_conv.ptrs_to.add(this);
345 this.msg = msg_hu_conv;
348 public final static class HandleError extends MessageSendEvent {
350 * The node_id of the node which should receive this message
352 public final byte[] node_id;
354 * The action which should be taken.
356 public final ErrorAction action;
357 private HandleError(long ptr, bindings.LDKMessageSendEvent.HandleError obj) {
359 this.node_id = obj.node_id;
360 long action = obj.action;
361 ErrorAction action_hu_conv = ErrorAction.constr_from_ptr(action);
362 action_hu_conv.ptrs_to.add(this);
363 this.action = action_hu_conv;
366 public final static class SendChannelRangeQuery extends MessageSendEvent {
368 * The node_id of this message recipient
370 public final byte[] node_id;
372 * The query_channel_range which should be sent.
374 public final QueryChannelRange msg;
375 private SendChannelRangeQuery(long ptr, bindings.LDKMessageSendEvent.SendChannelRangeQuery obj) {
377 this.node_id = obj.node_id;
379 QueryChannelRange msg_hu_conv = new QueryChannelRange(null, msg);
380 msg_hu_conv.ptrs_to.add(this);
381 this.msg = msg_hu_conv;
384 public final static class SendShortIdsQuery extends MessageSendEvent {
386 * The node_id of this message recipient
388 public final byte[] node_id;
390 * The query_short_channel_ids which should be sent.
392 public final QueryShortChannelIds msg;
393 private SendShortIdsQuery(long ptr, bindings.LDKMessageSendEvent.SendShortIdsQuery obj) {
395 this.node_id = obj.node_id;
397 QueryShortChannelIds msg_hu_conv = new QueryShortChannelIds(null, msg);
398 msg_hu_conv.ptrs_to.add(this);
399 this.msg = msg_hu_conv;
402 public final static class SendReplyChannelRange extends MessageSendEvent {
404 * The node_id of this message recipient
406 public final byte[] node_id;
408 * The reply_channel_range which should be sent.
410 public final ReplyChannelRange msg;
411 private SendReplyChannelRange(long ptr, bindings.LDKMessageSendEvent.SendReplyChannelRange obj) {
413 this.node_id = obj.node_id;
415 ReplyChannelRange msg_hu_conv = new ReplyChannelRange(null, msg);
416 msg_hu_conv.ptrs_to.add(this);
417 this.msg = msg_hu_conv;
421 * Creates a copy of the MessageSendEvent
423 public MessageSendEvent clone() {
424 long ret = bindings.MessageSendEvent_clone(this.ptr);
425 if (ret < 1024) { return null; }
426 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
427 ret_hu_conv.ptrs_to.add(this);
432 * Utility method to constructs a new SendAcceptChannel-variant MessageSendEvent
434 public static MessageSendEvent send_accept_channel(byte[] node_id, AcceptChannel msg) {
435 long ret = bindings.MessageSendEvent_send_accept_channel(node_id, msg == null ? 0 : msg.ptr & ~1);
436 if (ret < 1024) { return null; }
437 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
438 ret_hu_conv.ptrs_to.add(ret_hu_conv);
443 * Utility method to constructs a new SendOpenChannel-variant MessageSendEvent
445 public static MessageSendEvent send_open_channel(byte[] node_id, OpenChannel msg) {
446 long ret = bindings.MessageSendEvent_send_open_channel(node_id, msg == null ? 0 : msg.ptr & ~1);
447 if (ret < 1024) { return null; }
448 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
449 ret_hu_conv.ptrs_to.add(ret_hu_conv);
454 * Utility method to constructs a new SendFundingCreated-variant MessageSendEvent
456 public static MessageSendEvent send_funding_created(byte[] node_id, FundingCreated msg) {
457 long ret = bindings.MessageSendEvent_send_funding_created(node_id, msg == null ? 0 : msg.ptr & ~1);
458 if (ret < 1024) { return null; }
459 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
460 ret_hu_conv.ptrs_to.add(ret_hu_conv);
465 * Utility method to constructs a new SendFundingSigned-variant MessageSendEvent
467 public static MessageSendEvent send_funding_signed(byte[] node_id, FundingSigned msg) {
468 long ret = bindings.MessageSendEvent_send_funding_signed(node_id, msg == null ? 0 : msg.ptr & ~1);
469 if (ret < 1024) { return null; }
470 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
471 ret_hu_conv.ptrs_to.add(ret_hu_conv);
476 * Utility method to constructs a new SendFundingLocked-variant MessageSendEvent
478 public static MessageSendEvent send_funding_locked(byte[] node_id, FundingLocked msg) {
479 long ret = bindings.MessageSendEvent_send_funding_locked(node_id, msg == null ? 0 : msg.ptr & ~1);
480 if (ret < 1024) { return null; }
481 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
482 ret_hu_conv.ptrs_to.add(ret_hu_conv);
487 * Utility method to constructs a new SendAnnouncementSignatures-variant MessageSendEvent
489 public static MessageSendEvent send_announcement_signatures(byte[] node_id, AnnouncementSignatures msg) {
490 long ret = bindings.MessageSendEvent_send_announcement_signatures(node_id, msg == null ? 0 : msg.ptr & ~1);
491 if (ret < 1024) { return null; }
492 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
493 ret_hu_conv.ptrs_to.add(ret_hu_conv);
498 * Utility method to constructs a new UpdateHTLCs-variant MessageSendEvent
500 public static MessageSendEvent update_htlcs(byte[] node_id, CommitmentUpdate updates) {
501 long ret = bindings.MessageSendEvent_update_htlcs(node_id, updates == null ? 0 : updates.ptr & ~1);
502 if (ret < 1024) { return null; }
503 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
504 ret_hu_conv.ptrs_to.add(ret_hu_conv);
509 * Utility method to constructs a new SendRevokeAndACK-variant MessageSendEvent
511 public static MessageSendEvent send_revoke_and_ack(byte[] node_id, RevokeAndACK msg) {
512 long ret = bindings.MessageSendEvent_send_revoke_and_ack(node_id, msg == null ? 0 : msg.ptr & ~1);
513 if (ret < 1024) { return null; }
514 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
515 ret_hu_conv.ptrs_to.add(ret_hu_conv);
520 * Utility method to constructs a new SendClosingSigned-variant MessageSendEvent
522 public static MessageSendEvent send_closing_signed(byte[] node_id, ClosingSigned msg) {
523 long ret = bindings.MessageSendEvent_send_closing_signed(node_id, msg == null ? 0 : msg.ptr & ~1);
524 if (ret < 1024) { return null; }
525 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
526 ret_hu_conv.ptrs_to.add(ret_hu_conv);
531 * Utility method to constructs a new SendShutdown-variant MessageSendEvent
533 public static MessageSendEvent send_shutdown(byte[] node_id, Shutdown msg) {
534 long ret = bindings.MessageSendEvent_send_shutdown(node_id, msg == null ? 0 : msg.ptr & ~1);
535 if (ret < 1024) { return null; }
536 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
537 ret_hu_conv.ptrs_to.add(ret_hu_conv);
542 * Utility method to constructs a new SendChannelReestablish-variant MessageSendEvent
544 public static MessageSendEvent send_channel_reestablish(byte[] node_id, ChannelReestablish msg) {
545 long ret = bindings.MessageSendEvent_send_channel_reestablish(node_id, msg == null ? 0 : msg.ptr & ~1);
546 if (ret < 1024) { return null; }
547 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
548 ret_hu_conv.ptrs_to.add(ret_hu_conv);
553 * Utility method to constructs a new BroadcastChannelAnnouncement-variant MessageSendEvent
555 public static MessageSendEvent broadcast_channel_announcement(ChannelAnnouncement msg, ChannelUpdate update_msg) {
556 long ret = bindings.MessageSendEvent_broadcast_channel_announcement(msg == null ? 0 : msg.ptr & ~1, update_msg == null ? 0 : update_msg.ptr & ~1);
557 if (ret < 1024) { return null; }
558 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
559 ret_hu_conv.ptrs_to.add(ret_hu_conv);
564 * Utility method to constructs a new BroadcastNodeAnnouncement-variant MessageSendEvent
566 public static MessageSendEvent broadcast_node_announcement(NodeAnnouncement msg) {
567 long ret = bindings.MessageSendEvent_broadcast_node_announcement(msg == null ? 0 : msg.ptr & ~1);
568 if (ret < 1024) { return null; }
569 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
570 ret_hu_conv.ptrs_to.add(ret_hu_conv);
575 * Utility method to constructs a new BroadcastChannelUpdate-variant MessageSendEvent
577 public static MessageSendEvent broadcast_channel_update(ChannelUpdate msg) {
578 long ret = bindings.MessageSendEvent_broadcast_channel_update(msg == null ? 0 : msg.ptr & ~1);
579 if (ret < 1024) { return null; }
580 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
581 ret_hu_conv.ptrs_to.add(ret_hu_conv);
586 * Utility method to constructs a new SendChannelUpdate-variant MessageSendEvent
588 public static MessageSendEvent send_channel_update(byte[] node_id, ChannelUpdate msg) {
589 long ret = bindings.MessageSendEvent_send_channel_update(node_id, msg == null ? 0 : msg.ptr & ~1);
590 if (ret < 1024) { return null; }
591 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
592 ret_hu_conv.ptrs_to.add(ret_hu_conv);
597 * Utility method to constructs a new HandleError-variant MessageSendEvent
599 public static MessageSendEvent handle_error(byte[] node_id, ErrorAction action) {
600 long ret = bindings.MessageSendEvent_handle_error(node_id, action.ptr);
601 if (ret < 1024) { return null; }
602 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
603 ret_hu_conv.ptrs_to.add(ret_hu_conv);
608 * Utility method to constructs a new SendChannelRangeQuery-variant MessageSendEvent
610 public static MessageSendEvent send_channel_range_query(byte[] node_id, QueryChannelRange msg) {
611 long ret = bindings.MessageSendEvent_send_channel_range_query(node_id, msg == null ? 0 : msg.ptr & ~1);
612 if (ret < 1024) { return null; }
613 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
614 ret_hu_conv.ptrs_to.add(ret_hu_conv);
619 * Utility method to constructs a new SendShortIdsQuery-variant MessageSendEvent
621 public static MessageSendEvent send_short_ids_query(byte[] node_id, QueryShortChannelIds msg) {
622 long ret = bindings.MessageSendEvent_send_short_ids_query(node_id, msg == null ? 0 : msg.ptr & ~1);
623 if (ret < 1024) { return null; }
624 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
625 ret_hu_conv.ptrs_to.add(ret_hu_conv);
630 * Utility method to constructs a new SendReplyChannelRange-variant MessageSendEvent
632 public static MessageSendEvent send_reply_channel_range(byte[] node_id, ReplyChannelRange msg) {
633 long ret = bindings.MessageSendEvent_send_reply_channel_range(node_id, msg == null ? 0 : msg.ptr & ~1);
634 if (ret < 1024) { return null; }
635 MessageSendEvent ret_hu_conv = MessageSendEvent.constr_from_ptr(ret);
636 ret_hu_conv.ptrs_to.add(ret_hu_conv);