File tree Expand file tree Collapse file tree 1 file changed +10
-0
lines changed
Expand file tree Collapse file tree 1 file changed +10
-0
lines changed Original file line number Diff line number Diff line change @@ -14,6 +14,14 @@ class Client {
1414 Client (uint64_t id, int fd, const sockaddr_in& addr);
1515 ~Client ();
1616
17+ enum State {
18+ kParsingHeaders ,
19+ kRoutingRequest ,
20+ kSendingData ,
21+ kReceivingData ,
22+ kClosingConnection
23+ };
24+
1725 // setters
1826 void set_handler (Handler* handler) { handler_ = handler; }
1927 void set_nonblocking ();
@@ -24,6 +32,7 @@ class Client {
2432 uint64_t id () const { return id_; }
2533 int fd () const { return fd_; }
2634 const sockaddr_in& addr () const { return addr_; }
35+ State state () const { return state_; }
2736 const HttpRequest& req () const { return req_; }
2837 HttpResponse& res () { return res_; }
2938 std::string& recv_buffer () { return recv_buffer_; }
@@ -39,6 +48,7 @@ class Client {
3948 uint64_t id_;
4049 int fd_;
4150 sockaddr_in addr_;
51+ State state_;
4252 HttpRequest req_;
4353 HttpResponse res_; // TODO: remove
4454 std::string recv_buffer_;
You can’t perform that action at this time.
0 commit comments