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 RoutingMessageHandler extends CommonBase {
10 RoutingMessageHandler(Object _dummy, long ptr) { super(ptr); }
11 public RoutingMessageHandler(bindings.LDKRoutingMessageHandler arg) {
12 super(bindings.LDKRoutingMessageHandler_new(arg));
13 this.ptrs_to.add(arg);
15 @Override @SuppressWarnings("deprecation")
16 protected void finalize() throws Throwable {
17 bindings.RoutingMessageHandler_free(ptr); super.finalize();
20 // Skipped RoutingMessageHandler_handle_node_announcement
21 // Skipped RoutingMessageHandler_handle_channel_announcement
22 // Skipped RoutingMessageHandler_handle_channel_update
23 // Skipped RoutingMessageHandler_handle_htlc_fail_channel_update
24 public ThreeTuple<ChannelAnnouncement, ChannelUpdate, ChannelUpdate>[] get_next_channel_announcements(long starting_point, byte batch_amount) {
25 long[] ret = bindings.RoutingMessageHandler_get_next_channel_announcements(this.ptr, starting_point, batch_amount);
26 ThreeTuple<ChannelAnnouncement, ChannelUpdate, ChannelUpdate>[] arr_conv_63_arr = new ThreeTuple[ret.length];
27 for (int l = 0; l < ret.length; l++) {
28 long arr_conv_63 = ret[l];
29 long arr_conv_63_a = bindings.LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_a(arr_conv_63);
30 ChannelAnnouncement arr_conv_63_a_hu_conv = new ChannelAnnouncement(null, arr_conv_63_a);;
31 long arr_conv_63_b = bindings.LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_b(arr_conv_63);
32 ChannelUpdate arr_conv_63_b_hu_conv = new ChannelUpdate(null, arr_conv_63_b);;
33 long arr_conv_63_c = bindings.LDKC3Tuple_ChannelAnnouncementChannelUpdateChannelUpdateZ_get_c(arr_conv_63);
34 ChannelUpdate arr_conv_63_c_hu_conv = new ChannelUpdate(null, arr_conv_63_c);;
35 ThreeTuple<ChannelAnnouncement, ChannelUpdate, ChannelUpdate> arr_conv_63_conv = new ThreeTuple<ChannelAnnouncement, ChannelUpdate, ChannelUpdate>(arr_conv_63_a_hu_conv, arr_conv_63_b_hu_conv, arr_conv_63_c_hu_conv);
36 arr_conv_63_arr[l] = arr_conv_63_conv;
38 return arr_conv_63_arr;
41 public NodeAnnouncement[] get_next_node_announcements(byte[] starting_point, byte batch_amount) {
42 long[] ret = bindings.RoutingMessageHandler_get_next_node_announcements(this.ptr, starting_point, batch_amount);
43 NodeAnnouncement[] arr_conv_18_arr = new NodeAnnouncement[ret.length];
44 for (int s = 0; s < ret.length; s++) {
45 long arr_conv_18 = ret[s];
46 NodeAnnouncement arr_conv_18_hu_conv = new NodeAnnouncement(null, arr_conv_18);
47 arr_conv_18_arr[s] = arr_conv_18_hu_conv;
49 return arr_conv_18_arr;
52 public boolean should_request_full_sync(byte[] node_id) {
53 boolean ret = bindings.RoutingMessageHandler_should_request_full_sync(this.ptr, node_id);