OSDN Git Service

f0c606001e9c5ef69b0f2b5ca8cd005e8b28c69b
[iptd/iPTd.git] / src / ry0 / iPTd / HTTPD.h
1 /**\r
2  * @file HTTPDaemon.h\r
3  *\r
4  */\r
5 \r
6 #pragma once\r
7 \r
8 #include "Raym/Raym.h"\r
9 #include "net/HTTPDaemon.h"\r
10 \r
11 namespace ry0\r
12 {\r
13 namespace iPTd\r
14 {\r
15 \r
16 class Controller;\r
17 \r
18 class HTTPDaemon : public Raym::Object,\r
19                    public NET::HTTPDaemonDelegate\r
20 {\r
21 private:\r
22     Controller *        _controller;\r
23     NET::HTTPDaemon *   _httpd;\r
24     int                 _port;\r
25     Raym::String *      _path;\r
26 \r
27 protected:\r
28     HTTPDaemon();\r
29     ~HTTPDaemon();\r
30 \r
31 public:\r
32     static HTTPDaemon *alloc();\r
33     HTTPDaemon *initWithController(Controller *controller, int port, Raym::String *path);\r
34 \r
35     bool start();\r
36     void stop();\r
37 \r
38     NET::HTTPResponse *request(NET::HTTPRequest *request, struct sockaddr_in *client);\r
39 };\r
40 \r
41 \r
42 } // iPTd\r
43 } // ry0\r