[Java] Update ChannelManagerConstructor
[ldk-java] / node-net / net.mts
index 58da387d6c59177c363e2777f31091079558caf4..9e16ab32601da75ded82e13e98d505ee9f27fac5 100644 (file)
@@ -8,6 +8,12 @@ export class NodeLDKNet {
        private ping_timer;
        private servers: net.Server[];
        public constructor(public peer_manager: ldk.PeerManager) {
+               // @ts-ignore
+               if (peer_manager._node_ldk_net_singleton_check != undefined) {
+                       throw "Only one NdoeLDKNet should exist per PeerManager";
+               }
+               // @ts-ignore
+               peer_manager._node_ldk_net_singleton_check = this;
                this.ping_timer = setInterval(function() {
                        peer_manager.timer_tick_occurred();
                        peer_manager.process_events();
@@ -24,6 +30,8 @@ export class NodeLDKNet {
                        server.close();
                }
                this.peer_manager.disconnect_all_peers();
+               // @ts-ignore
+               delete this.peer_manager._node_ldk_net_singleton_check;
        }
 
        /**
@@ -82,6 +90,9 @@ export class NodeLDKNet {
                socket.on("close", function() {
                        this_pm.socket_disconnected(descriptor);
                });
+               socket.on("error", function() {
+                       this_pm.socket_disconnected(descriptor);
+               });
 
                return descriptor;
        }