ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/AnyEvent-MP/eg/chat_server2
(Generate patch)

Comparing AnyEvent-MP/eg/chat_server2 (file contents):
Revision 1.3 by root, Sat Sep 5 21:16:59 2009 UTC vs.
Revision 1.4 by root, Wed Mar 21 01:14:12 2012 UTC

3# Usage: ./chat_server 3# Usage: ./chat_server
4# implement a chat client using "bridge-head" methodology. 4# implement a chat client using "bridge-head" methodology.
5 5
6use common::sense; 6use common::sense;
7use AnyEvent::MP; 7use AnyEvent::MP;
8use AnyEvent::MP::Global;
9 8
10configure; 9configure;
11 10
12grp_reg eg_chat_server2 => $NODE; 11db_set eg_chat_server2 => $NODE;
13 12
14my %clients; 13my %clients;
15 14
16sub msg { 15sub msg {
17 print "relaying: $_[0]\n"; 16 print "relaying: $_[0]\n";
21 20
22sub client_connect { 21sub client_connect {
23 my ($client, $nick) = @_; 22 my ($client, $nick) = @_;
24 23
25 mon $client; 24 mon $client;
26 mon $client, sub { 25 mon $client, psub {
27 delete $clients{$client}; 26 delete $clients{$client};
28 msg "$nick (quits, @_)"; 27 msg "$nick (quits, @_)";
29 }; 28 };
30 29
31 $clients{$client} = $client; 30 $clients{$client} = $client;
36} 35}
37 36
38warn "server ready.\n"; 37warn "server ready.\n";
39 38
40AE::cv->recv; 39AE::cv->recv;
40

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines