annotate asyncdreactor/protocol/Http11.d @ 11:5836613d16ac

reorg! reorg!
author rick@minifunk
date Tue, 12 Aug 2008 16:59:56 -0400
parents dreactor/protocol/Http11.d@e75a2e506b1d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
1 module dreactor.protocol.Http11;
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
2
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
3 import dreactor.protocol.RawTcp;
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
4 import dreactor.protocol.http11_parser;
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
5
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
6 class HttpListener
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
7 {
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
8 public
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
9 this(Vat sel, IPv4Address addr)
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
10 {
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
11 listener = new RawTCPListener(sel, IPv4Address addr);
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
12 parser = new Http11Parser();
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
13 listener.setDataHandler(&onData);
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
14 }
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
15
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
16 private int onData(char[] buffer)
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
17 {
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
18 parser.execute(buffer);
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
19 }
0
7a315154bf5e Initial commit
rick@minifunk
parents:
diff changeset
20
10
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
21
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
22 private
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
23 RawTCPListener listener;
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
24 Http11Parser parser;
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
25 }
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
26
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
27 class HttpClient
0
7a315154bf5e Initial commit
rick@minifunk
parents:
diff changeset
28 {
10
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
29 public
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
30 this(Vat sel)
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
31 {
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
32 client = new RawTCPClient(sel);
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
33 client.setDataHandler(&onData);
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
34 }
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
35
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
36 private int onData()
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
37 {
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
38
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
39 }
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
40 private
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
41 RawTCPClient client;
0
7a315154bf5e Initial commit
rick@minifunk
parents:
diff changeset
42 }
10
e75a2e506b1d housekeeping
rick@minifunk
parents: 0
diff changeset
43