String txid = Arrays.toString(bindings.OutPoint_get_txid(funding_txo));
assert monitors.containsKey(txid);
long update_res = bindings.ChannelMonitor_update_monitor(monitors.get(txid), update, tx_broadcaster, fee_estimator, logger);
String txid = Arrays.toString(bindings.OutPoint_get_txid(funding_txo));
assert monitors.containsKey(txid);
long update_res = bindings.ChannelMonitor_update_monitor(monitors.get(txid), update, tx_broadcaster, fee_estimator, logger);
void do_read_event(ConcurrentLinkedQueue<Thread> list, long pm, long descriptor, byte[] arr) {
Thread thread = new Thread(() -> {
long res = bindings.PeerManager_read_event(pm, descriptor, arr);
void do_read_event(ConcurrentLinkedQueue<Thread> list, long pm, long descriptor, byte[] arr) {
Thread thread = new Thread(() -> {
long res = bindings.PeerManager_read_event(pm, descriptor, arr);
//assert bindings.deref_bool(bindings.LDKCResult_boolPeerHandleErrorZ_get_inner(res));
bindings.CResult_boolPeerHandleErrorZ_free(res);
});
//assert bindings.deref_bool(bindings.LDKCResult_boolPeerHandleErrorZ_get_inner(res));
bindings.CResult_boolPeerHandleErrorZ_free(res);
});
descriptor1.val = bindings.LDKSocketDescriptor_new(sock2);
long init_vec = bindings.PeerManager_new_outbound_connection(peer1.peer_manager, peer2.node_id, descriptor1.val);
descriptor1.val = bindings.LDKSocketDescriptor_new(sock2);
long init_vec = bindings.PeerManager_new_outbound_connection(peer1.peer_manager, peer2.node_id, descriptor1.val);
bindings.CResult_NonePeerHandleErrorZ_free(con_res);
do_read_event(list, peer2.peer_manager, descriptor2, bindings.LDKCResult_CVec_u8ZPeerHandleErrorZ_get_ok(init_vec));
bindings.CResult_CVec_u8ZPeerHandleErrorZ_free(init_vec);
bindings.CResult_NonePeerHandleErrorZ_free(con_res);
do_read_event(list, peer2.peer_manager, descriptor2, bindings.LDKCResult_CVec_u8ZPeerHandleErrorZ_get_ok(init_vec));
bindings.CResult_CVec_u8ZPeerHandleErrorZ_free(init_vec);
deliver_peer_messages(list, peer1.peer_manager, peer2.peer_manager);
long cc_res = bindings.ChannelManager_create_channel(peer1.chan_manager, peer2.node_id, 10000, 1000, 42, 0);
deliver_peer_messages(list, peer1.peer_manager, peer2.peer_manager);
long cc_res = bindings.ChannelManager_create_channel(peer1.chan_manager, peer2.node_id, 10000, 1000, 42, 0);
bindings.CResult_NoneAPIErrorZ_free(cc_res);
deliver_peer_messages(list, peer1.peer_manager, peer2.peer_manager);
bindings.CResult_NoneAPIErrorZ_free(cc_res);
deliver_peer_messages(list, peer1.peer_manager, peer2.peer_manager);
long payment_res = bindings.ChannelManager_send_payment(peer1.chan_manager, bindings.LDKCResult_RouteLightningErrorZ_get_ok(route),
bindings.C2Tuple_PaymentHashPaymentSecretZ_get_a(inbound_payment), bindings.C2Tuple_PaymentHashPaymentSecretZ_get_b(inbound_payment));
bindings.CResult_RouteLightningErrorZ_free(route);
bindings.C2Tuple_PaymentHashPaymentSecretZ_free(inbound_payment);
long payment_res = bindings.ChannelManager_send_payment(peer1.chan_manager, bindings.LDKCResult_RouteLightningErrorZ_get_ok(route),
bindings.C2Tuple_PaymentHashPaymentSecretZ_get_a(inbound_payment), bindings.C2Tuple_PaymentHashPaymentSecretZ_get_b(inbound_payment));
bindings.CResult_RouteLightningErrorZ_free(route);
bindings.C2Tuple_PaymentHashPaymentSecretZ_free(inbound_payment);
bindings.CResult_NonePaymentSendFailureZ_free(payment_res);
deliver_peer_messages(list, peer1.peer_manager, peer2.peer_manager);
bindings.CResult_NonePaymentSendFailureZ_free(payment_res);
deliver_peer_messages(list, peer1.peer_manager, peer2.peer_manager);