3 import CommonBase from './CommonBase';
4 import * as bindings from '../bindings' // TODO: figure out location
8 export default class PeerManager extends CommonBase {
9 constructor(_dummy: object, ptr: number) {
14 protected finalize() {
18 bindings.PeerManager_free(this.ptr);
21 public static PeerManager constructor_new(ChannelMessageHandler message_handler_chan_handler_arg, RoutingMessageHandler message_handler_route_handler_arg, Uint8Array our_node_secret, Uint8Array ephemeral_random_data, Logger logger) {
22 number ret = bindings.PeerManager_new(bindings.MessageHandler_new(message_handler_chan_handler_arg == null ? 0 : message_handler_chan_handler_arg.ptr, message_handler_route_handler_arg == null ? 0 : message_handler_route_handler_arg.ptr), our_node_secret, ephemeral_random_data, logger == null ? 0 : logger.ptr);
23 const ret_hu_conv: PeerManager = new PeerManager(null, ret);
24 ret_hu_conv.ptrs_to.add(message_handler_chan_handler_arg);
25 ret_hu_conv.ptrs_to.add(message_handler_route_handler_arg);
26 ret_hu_conv.ptrs_to.add(logger);
30 public Uint8Array[] get_peer_node_ids() {
31 Uint8Array[] ret = bindings.PeerManager_get_peer_node_ids(this.ptr);
35 public Result_CVec_u8ZPeerHandleErrorZ new_outbound_connection(Uint8Array their_node_id, SocketDescriptor descriptor) {
36 number ret = bindings.PeerManager_new_outbound_connection(this.ptr, their_node_id, descriptor == null ? 0 : descriptor.ptr);
37 Result_CVec_u8ZPeerHandleErrorZ ret_hu_conv = Result_CVec_u8ZPeerHandleErrorZ.constr_from_ptr(ret);
38 this.ptrs_to.add(descriptor);
42 public Result_NonePeerHandleErrorZ new_inbound_connection(SocketDescriptor descriptor) {
43 number ret = bindings.PeerManager_new_inbound_connection(this.ptr, descriptor == null ? 0 : descriptor.ptr);
44 Result_NonePeerHandleErrorZ ret_hu_conv = Result_NonePeerHandleErrorZ.constr_from_ptr(ret);
45 this.ptrs_to.add(descriptor);
49 public Result_NonePeerHandleErrorZ write_buffer_space_avail(SocketDescriptor descriptor) {
50 number ret = bindings.PeerManager_write_buffer_space_avail(this.ptr, descriptor == null ? 0 : descriptor.ptr);
51 Result_NonePeerHandleErrorZ ret_hu_conv = Result_NonePeerHandleErrorZ.constr_from_ptr(ret);
52 this.ptrs_to.add(descriptor);
56 public Result_boolPeerHandleErrorZ read_event(SocketDescriptor peer_descriptor, Uint8Array data) {
57 number ret = bindings.PeerManager_read_event(this.ptr, peer_descriptor == null ? 0 : peer_descriptor.ptr, data);
58 Result_boolPeerHandleErrorZ ret_hu_conv = Result_boolPeerHandleErrorZ.constr_from_ptr(ret);
59 this.ptrs_to.add(peer_descriptor);
63 public void process_events() {
64 bindings.PeerManager_process_events(this.ptr);
67 public void socket_disconnected(SocketDescriptor descriptor) {
68 bindings.PeerManager_socket_disconnected(this.ptr, descriptor == null ? 0 : descriptor.ptr);
69 this.ptrs_to.add(descriptor);
72 public void timer_tick_occured() {
73 bindings.PeerManager_timer_tick_occured(this.ptr);