… | |
… | |
191 | mon $port, sub { |
191 | mon $port, sub { |
192 | unreg_groups $node; |
192 | unreg_groups $node; |
193 | delete $port{$node}; |
193 | delete $port{$node}; |
194 | }; |
194 | }; |
195 | |
195 | |
|
|
196 | use Data::Dumper; warn Dumper ["addr => ", $AnyEvent::MP::Kernel::LISTENER];#d# |
196 | snd $port, addr => $AnyEvent::MP::Kernel::LISTENER; |
197 | snd $port, addr => $AnyEvent::MP::Kernel::LISTENER; |
197 | snd $port, connect_nodes => \%addr if %addr; |
198 | snd $port, connect_nodes => \%addr if %addr; |
198 | snd $port, set => \%lreg if %lreg; |
199 | snd $port, set => \%lreg if %lreg; |
199 | } |
200 | } |
200 | |
201 | |
… | |
… | |
215 | #TODO: should be done by a node finding out about a listener-less one |
216 | #TODO: should be done by a node finding out about a listener-less one |
216 | if (@$addresses) { |
217 | if (@$addresses) { |
217 | for my $other (values %AnyEvent::MP::NODE) { |
218 | for my $other (values %AnyEvent::MP::NODE) { |
218 | if ($other->{transport}) { |
219 | if ($other->{transport}) { |
219 | if ($addr{$other->{id}}) { |
220 | if ($addr{$other->{id}}) { |
220 | if (!{ $addr{$other} }) { |
221 | if (!@{ $addr{$other->{id}} }) { |
221 | $AnyEvent::MP::Kernel::WARN->(9, "helping $other->{id} to find $node."); |
222 | $AnyEvent::MP::Kernel::WARN->(9, "helping $other->{id} to find $node."); |
222 | snd $port{$other}, connect_nodes => { $node => $addresses }; |
223 | snd $port{$other->{id}}, connect_nodes => { $node => $addresses }; |
223 | } |
224 | } |
224 | } |
225 | } |
225 | } |
226 | } |
226 | } |
227 | } |
227 | } |
228 | } |