1 package org.ldk.structs;
3 import org.ldk.impl.bindings;
4 import org.ldk.enums.*;
6 import java.util.Arrays;
8 @SuppressWarnings("unchecked") // We correctly assign various generic arrays
9 public class MessageSendEvent extends CommonBase {
10 private MessageSendEvent(Object _dummy, long ptr) { super(ptr); }
11 @Override @SuppressWarnings("deprecation")
12 protected void finalize() throws Throwable {
14 if (ptr != 0) { bindings.MessageSendEvent_free(ptr); }
16 static MessageSendEvent constr_from_ptr(long ptr) {
17 bindings.LDKMessageSendEvent raw_val = bindings.LDKMessageSendEvent_ref_from_ptr(ptr);
18 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendAcceptChannel.class) {
19 return new SendAcceptChannel(ptr, (bindings.LDKMessageSendEvent.SendAcceptChannel)raw_val);
21 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendOpenChannel.class) {
22 return new SendOpenChannel(ptr, (bindings.LDKMessageSendEvent.SendOpenChannel)raw_val);
24 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendFundingCreated.class) {
25 return new SendFundingCreated(ptr, (bindings.LDKMessageSendEvent.SendFundingCreated)raw_val);
27 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendFundingSigned.class) {
28 return new SendFundingSigned(ptr, (bindings.LDKMessageSendEvent.SendFundingSigned)raw_val);
30 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendFundingLocked.class) {
31 return new SendFundingLocked(ptr, (bindings.LDKMessageSendEvent.SendFundingLocked)raw_val);
33 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendAnnouncementSignatures.class) {
34 return new SendAnnouncementSignatures(ptr, (bindings.LDKMessageSendEvent.SendAnnouncementSignatures)raw_val);
36 if (raw_val.getClass() == bindings.LDKMessageSendEvent.UpdateHTLCs.class) {
37 return new UpdateHTLCs(ptr, (bindings.LDKMessageSendEvent.UpdateHTLCs)raw_val);
39 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendRevokeAndACK.class) {
40 return new SendRevokeAndACK(ptr, (bindings.LDKMessageSendEvent.SendRevokeAndACK)raw_val);
42 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendClosingSigned.class) {
43 return new SendClosingSigned(ptr, (bindings.LDKMessageSendEvent.SendClosingSigned)raw_val);
45 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendShutdown.class) {
46 return new SendShutdown(ptr, (bindings.LDKMessageSendEvent.SendShutdown)raw_val);
48 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendChannelReestablish.class) {
49 return new SendChannelReestablish(ptr, (bindings.LDKMessageSendEvent.SendChannelReestablish)raw_val);
51 if (raw_val.getClass() == bindings.LDKMessageSendEvent.BroadcastChannelAnnouncement.class) {
52 return new BroadcastChannelAnnouncement(ptr, (bindings.LDKMessageSendEvent.BroadcastChannelAnnouncement)raw_val);
54 if (raw_val.getClass() == bindings.LDKMessageSendEvent.BroadcastNodeAnnouncement.class) {
55 return new BroadcastNodeAnnouncement(ptr, (bindings.LDKMessageSendEvent.BroadcastNodeAnnouncement)raw_val);
57 if (raw_val.getClass() == bindings.LDKMessageSendEvent.BroadcastChannelUpdate.class) {
58 return new BroadcastChannelUpdate(ptr, (bindings.LDKMessageSendEvent.BroadcastChannelUpdate)raw_val);
60 if (raw_val.getClass() == bindings.LDKMessageSendEvent.HandleError.class) {
61 return new HandleError(ptr, (bindings.LDKMessageSendEvent.HandleError)raw_val);
63 if (raw_val.getClass() == bindings.LDKMessageSendEvent.PaymentFailureNetworkUpdate.class) {
64 return new PaymentFailureNetworkUpdate(ptr, (bindings.LDKMessageSendEvent.PaymentFailureNetworkUpdate)raw_val);
66 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendChannelRangeQuery.class) {
67 return new SendChannelRangeQuery(ptr, (bindings.LDKMessageSendEvent.SendChannelRangeQuery)raw_val);
69 if (raw_val.getClass() == bindings.LDKMessageSendEvent.SendShortIdsQuery.class) {
70 return new SendShortIdsQuery(ptr, (bindings.LDKMessageSendEvent.SendShortIdsQuery)raw_val);
72 assert false; return null; // Unreachable without extending the (internal) bindings interface
75 public final static class SendAcceptChannel extends MessageSendEvent {
76 public final byte[] node_id;
77 public final AcceptChannel msg;
78 private SendAcceptChannel(long ptr, bindings.LDKMessageSendEvent.SendAcceptChannel obj) {
80 this.node_id = obj.node_id;
82 AcceptChannel msg_hu_conv = new AcceptChannel(null, msg);
83 msg_hu_conv.ptrs_to.add(this);
84 this.msg = msg_hu_conv;
87 public final static class SendOpenChannel extends MessageSendEvent {
88 public final byte[] node_id;
89 public final OpenChannel msg;
90 private SendOpenChannel(long ptr, bindings.LDKMessageSendEvent.SendOpenChannel obj) {
92 this.node_id = obj.node_id;
94 OpenChannel msg_hu_conv = new OpenChannel(null, msg);
95 msg_hu_conv.ptrs_to.add(this);
96 this.msg = msg_hu_conv;
99 public final static class SendFundingCreated extends MessageSendEvent {
100 public final byte[] node_id;
101 public final FundingCreated msg;
102 private SendFundingCreated(long ptr, bindings.LDKMessageSendEvent.SendFundingCreated obj) {
104 this.node_id = obj.node_id;
106 FundingCreated msg_hu_conv = new FundingCreated(null, msg);
107 msg_hu_conv.ptrs_to.add(this);
108 this.msg = msg_hu_conv;
111 public final static class SendFundingSigned extends MessageSendEvent {
112 public final byte[] node_id;
113 public final FundingSigned msg;
114 private SendFundingSigned(long ptr, bindings.LDKMessageSendEvent.SendFundingSigned obj) {
116 this.node_id = obj.node_id;
118 FundingSigned msg_hu_conv = new FundingSigned(null, msg);
119 msg_hu_conv.ptrs_to.add(this);
120 this.msg = msg_hu_conv;
123 public final static class SendFundingLocked extends MessageSendEvent {
124 public final byte[] node_id;
125 public final FundingLocked msg;
126 private SendFundingLocked(long ptr, bindings.LDKMessageSendEvent.SendFundingLocked obj) {
128 this.node_id = obj.node_id;
130 FundingLocked msg_hu_conv = new FundingLocked(null, msg);
131 msg_hu_conv.ptrs_to.add(this);
132 this.msg = msg_hu_conv;
135 public final static class SendAnnouncementSignatures extends MessageSendEvent {
136 public final byte[] node_id;
137 public final AnnouncementSignatures msg;
138 private SendAnnouncementSignatures(long ptr, bindings.LDKMessageSendEvent.SendAnnouncementSignatures obj) {
140 this.node_id = obj.node_id;
142 AnnouncementSignatures msg_hu_conv = new AnnouncementSignatures(null, msg);
143 msg_hu_conv.ptrs_to.add(this);
144 this.msg = msg_hu_conv;
147 public final static class UpdateHTLCs extends MessageSendEvent {
148 public final byte[] node_id;
149 public final CommitmentUpdate updates;
150 private UpdateHTLCs(long ptr, bindings.LDKMessageSendEvent.UpdateHTLCs obj) {
152 this.node_id = obj.node_id;
153 long updates = obj.updates;
154 CommitmentUpdate updates_hu_conv = new CommitmentUpdate(null, updates);
155 updates_hu_conv.ptrs_to.add(this);
156 this.updates = updates_hu_conv;
159 public final static class SendRevokeAndACK extends MessageSendEvent {
160 public final byte[] node_id;
161 public final RevokeAndACK msg;
162 private SendRevokeAndACK(long ptr, bindings.LDKMessageSendEvent.SendRevokeAndACK obj) {
164 this.node_id = obj.node_id;
166 RevokeAndACK msg_hu_conv = new RevokeAndACK(null, msg);
167 msg_hu_conv.ptrs_to.add(this);
168 this.msg = msg_hu_conv;
171 public final static class SendClosingSigned extends MessageSendEvent {
172 public final byte[] node_id;
173 public final ClosingSigned msg;
174 private SendClosingSigned(long ptr, bindings.LDKMessageSendEvent.SendClosingSigned obj) {
176 this.node_id = obj.node_id;
178 ClosingSigned msg_hu_conv = new ClosingSigned(null, msg);
179 msg_hu_conv.ptrs_to.add(this);
180 this.msg = msg_hu_conv;
183 public final static class SendShutdown extends MessageSendEvent {
184 public final byte[] node_id;
185 public final Shutdown msg;
186 private SendShutdown(long ptr, bindings.LDKMessageSendEvent.SendShutdown obj) {
188 this.node_id = obj.node_id;
190 Shutdown msg_hu_conv = new Shutdown(null, msg);
191 msg_hu_conv.ptrs_to.add(this);
192 this.msg = msg_hu_conv;
195 public final static class SendChannelReestablish extends MessageSendEvent {
196 public final byte[] node_id;
197 public final ChannelReestablish msg;
198 private SendChannelReestablish(long ptr, bindings.LDKMessageSendEvent.SendChannelReestablish obj) {
200 this.node_id = obj.node_id;
202 ChannelReestablish msg_hu_conv = new ChannelReestablish(null, msg);
203 msg_hu_conv.ptrs_to.add(this);
204 this.msg = msg_hu_conv;
207 public final static class BroadcastChannelAnnouncement extends MessageSendEvent {
208 public final ChannelAnnouncement msg;
209 public final ChannelUpdate update_msg;
210 private BroadcastChannelAnnouncement(long ptr, bindings.LDKMessageSendEvent.BroadcastChannelAnnouncement obj) {
213 ChannelAnnouncement msg_hu_conv = new ChannelAnnouncement(null, msg);
214 msg_hu_conv.ptrs_to.add(this);
215 this.msg = msg_hu_conv;
216 long update_msg = obj.update_msg;
217 ChannelUpdate update_msg_hu_conv = new ChannelUpdate(null, update_msg);
218 update_msg_hu_conv.ptrs_to.add(this);
219 this.update_msg = update_msg_hu_conv;
222 public final static class BroadcastNodeAnnouncement extends MessageSendEvent {
223 public final NodeAnnouncement msg;
224 private BroadcastNodeAnnouncement(long ptr, bindings.LDKMessageSendEvent.BroadcastNodeAnnouncement obj) {
227 NodeAnnouncement msg_hu_conv = new NodeAnnouncement(null, msg);
228 msg_hu_conv.ptrs_to.add(this);
229 this.msg = msg_hu_conv;
232 public final static class BroadcastChannelUpdate extends MessageSendEvent {
233 public final ChannelUpdate msg;
234 private BroadcastChannelUpdate(long ptr, bindings.LDKMessageSendEvent.BroadcastChannelUpdate obj) {
237 ChannelUpdate msg_hu_conv = new ChannelUpdate(null, msg);
238 msg_hu_conv.ptrs_to.add(this);
239 this.msg = msg_hu_conv;
242 public final static class HandleError extends MessageSendEvent {
243 public final byte[] node_id;
244 public final ErrorAction action;
245 private HandleError(long ptr, bindings.LDKMessageSendEvent.HandleError obj) {
247 this.node_id = obj.node_id;
248 long action = obj.action;
249 ErrorAction action_hu_conv = ErrorAction.constr_from_ptr(action);
250 action_hu_conv.ptrs_to.add(this);
251 this.action = action_hu_conv;
254 public final static class PaymentFailureNetworkUpdate extends MessageSendEvent {
255 public final HTLCFailChannelUpdate update;
256 private PaymentFailureNetworkUpdate(long ptr, bindings.LDKMessageSendEvent.PaymentFailureNetworkUpdate obj) {
258 long update = obj.update;
259 HTLCFailChannelUpdate update_hu_conv = HTLCFailChannelUpdate.constr_from_ptr(update);
260 update_hu_conv.ptrs_to.add(this);
261 this.update = update_hu_conv;
264 public final static class SendChannelRangeQuery extends MessageSendEvent {
265 public final byte[] node_id;
266 public final QueryChannelRange msg;
267 private SendChannelRangeQuery(long ptr, bindings.LDKMessageSendEvent.SendChannelRangeQuery obj) {
269 this.node_id = obj.node_id;
271 QueryChannelRange msg_hu_conv = new QueryChannelRange(null, msg);
272 msg_hu_conv.ptrs_to.add(this);
273 this.msg = msg_hu_conv;
276 public final static class SendShortIdsQuery extends MessageSendEvent {
277 public final byte[] node_id;
278 public final QueryShortChannelIds msg;
279 private SendShortIdsQuery(long ptr, bindings.LDKMessageSendEvent.SendShortIdsQuery obj) {
281 this.node_id = obj.node_id;
283 QueryShortChannelIds msg_hu_conv = new QueryShortChannelIds(null, msg);
284 msg_hu_conv.ptrs_to.add(this);
285 this.msg = msg_hu_conv;