+ /** A Event of type ConnectionNeeded */
+ public class Event_ConnectionNeeded : Event {
+ /**
+ * The node id for the node needing a connection.
+ */
+ public byte[] node_id;
+ /**
+ * Sockets for connecting to the node.
+ */
+ public SocketAddress[] addresses;
+ internal Event_ConnectionNeeded(long ptr) : base(null, ptr) {
+ long node_id = bindings.LDKEvent_ConnectionNeeded_get_node_id(ptr);
+ byte[] node_id_conv = InternalUtils.decodeUint8Array(node_id);
+ this.node_id = node_id_conv;
+ long addresses = bindings.LDKEvent_ConnectionNeeded_get_addresses(ptr);
+ int addresses_conv_15_len = InternalUtils.getArrayLength(addresses);
+ SocketAddress[] addresses_conv_15_arr = new SocketAddress[addresses_conv_15_len];
+ for (int p = 0; p < addresses_conv_15_len; p++) {
+ long addresses_conv_15 = InternalUtils.getU64ArrayElem(addresses, p);
+ org.ldk.structs.SocketAddress addresses_conv_15_hu_conv = org.ldk.structs.SocketAddress.constr_from_ptr(addresses_conv_15);
+ if (addresses_conv_15_hu_conv != null) { addresses_conv_15_hu_conv.ptrs_to.AddLast(this); };
+ addresses_conv_15_arr[p] = addresses_conv_15_hu_conv;
+ }
+ bindings.free_buffer(addresses);
+ this.addresses = addresses_conv_15_arr;
+ }
+ }