libt2n: (gerd) add lots of error handling code, unit tests for this error handling...
[libt2n] / examples-codegen / example2 / server.cpp
1 /*
2     Copyright (C) 2006                                                    
3     intra2net.com                                                         
4
5     This program is free software; you can redistribute it and/or modify
6     it under the terms of the GNU General Public License as published by
7     the Free Software Foundation; either version 2 of the License, or
8     (at your option) any later version.
9
10     This program is distributed in the hope that it will be useful,
11     but WITHOUT ANY WARRANTY; without even the implied warranty of
12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13     GNU General Public License for more details.
14
15     You should have received a copy of the GNU General Public License
16     along with this program; if not, write to the Free Software
17     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18 */
19 #include <socket_server.hxx>
20 #include <command_server.hxx>
21
22 #include "default_server.hxx"
23 #include "other_server.hxx"
24
25 using namespace libt2n;
26
27
28 int main(int argc, char** argv)
29 {
30     // don't kill the server on broken pipe
31     signal(SIGPIPE, SIG_IGN);
32
33     socket_server ss("./socket");
34     socket_server ss_other("./socket_other");
35     group_command_server<cmd_group_default> cs(ss);
36     group_command_server<cmd_group_other> cs_other(ss_other);
37
38     // handle requests
39     while(true)
40     {
41         cs.handle(1000);
42         cs_other.handle(1000);
43     }
44
45     return 0;
46 }