Rewrite the world, with several interdependant changes (but several still WIP)
[ldk-java] / src / main / java / org / ldk / structs / RoutingMessageHandler.java
1 package org.ldk.structs;
2
3 import org.ldk.impl.bindings;
4 import org.ldk.enums.*;
5 import org.ldk.util.*;
6 import java.util.Arrays;
7
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);
14         }
15         @Override @SuppressWarnings("deprecation")
16         protected void finalize() throws Throwable {
17                 bindings.RoutingMessageHandler_free(ptr); super.finalize();
18         }
19
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;
37                 }
38                 return arr_conv_63_arr;
39         }
40
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;
48                 }
49                 return arr_conv_18_arr;
50         }
51
52         public boolean should_request_full_sync(byte[] node_id) {
53                 boolean ret = bindings.RoutingMessageHandler_should_request_full_sync(this.ptr, node_id);
54                 return ret;
55         }
56
57 }