ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/AnyEvent-MP/MP/Node.pm
(Generate patch)

Comparing AnyEvent-MP/MP/Node.pm (file contents):
Revision 1.15 by root, Sat Aug 8 21:56:29 2009 UTC vs.
Revision 1.17 by root, Mon Aug 10 01:37:19 2009 UTC

17use AE (); 17use AE ();
18use AnyEvent::Util (); 18use AnyEvent::Util ();
19use AnyEvent::Socket (); 19use AnyEvent::Socket ();
20 20
21use AnyEvent::MP::Transport (); 21use AnyEvent::MP::Transport ();
22
23use base Exporter::;
24
25our $VERSION = '0.0';
26 22
27sub new { 23sub new {
28 my ($class, $noderef) = @_; 24 my ($class, $noderef) = @_;
29 25
30 bless { noderef => $noderef }, $class 26 bless { noderef => $noderef }, $class
83 79
84 $self->clr_transport 80 $self->clr_transport
85 if $self->{transport}; 81 if $self->{transport};
86 82
87 delete $self->{trial}; 83 delete $self->{trial};
84 delete $self->{retry};
88 delete $self->{next_connect}; 85 delete $self->{next_connect};
89 86
90 $self->{transport} = $transport; 87 $self->{transport} = $transport;
91 88
92 $transport->send ($_) 89 $transport->send ($_)
139 ; 136 ;
140 137
141 [$w, \$g] 138 [$w, \$g]
142 }; 139 };
143 } else { 140 } else {
141 $self->fail (transport_error => $self->{noderef}, "unable to connect");
142 }
143
144 $self->{next_connect} = AE::timer $AnyEvent::MP::Base::CONNECT_INTERVAL, 0, sub {
144 delete $self->{retry}; 145 delete $self->{retry};
145 $self->fail (transport_error => $self->{noderef}, "unable to connect");
146 }
147
148 $self->{next_connect} = AE::timer $AnyEvent::MP::Base::CONNECT_INTERVAL, 0, sub {
149 $self->connect; 146 $self->connect;
150 }; 147 };
151} 148}
152 149
153package AnyEvent::MP::Node::Slave; 150package AnyEvent::MP::Node::Slave;
201 delete $AnyEvent::MP::Base::LMON{$portid}{$cb+0}; 198 delete $AnyEvent::MP::Base::LMON{$portid}{$cb+0};
202} 199}
203 200
204=head1 SEE ALSO 201=head1 SEE ALSO
205 202
206L<AnyEvent>. 203L<AnyEvent::MP>.
207 204
208=head1 AUTHOR 205=head1 AUTHOR
209 206
210 Marc Lehmann <schmorp@schmorp.de> 207 Marc Lehmann <schmorp@schmorp.de>
211 http://home.schmorp.de/ 208 http://home.schmorp.de/

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines