comparison dreactor/protocol/DefaultProvider.d @ 13:8c9b1276f623 default tip

bug fixes
author rick@minifunk
date Sat, 20 Sep 2008 18:33:11 -0400
parents d6a3cfe7c3de
children
comparison
equal deleted inserted replaced
12:d6a3cfe7c3de 13:8c9b1276f623
1 module dreactor.protocol.DefaultProvider; 1 module dreactor.protocol.DefaultProvider;
2 2
3 import tango.io.Selector; 3 import tango.io.selector.model.ISelector;
4 import tango.io.device.Conduit;
4 5
5 import dreactor.protocol.IProvider; 6 import dreactor.protocol.IProvider;
6 7
7 8
8 9
9 class DefaultProvider : IProvider 10 class DefaultProvider : IProvider
10 { 11 {
11 private 12 private
12 Conduit cond; 13 Conduit cond;
13 Events evts; 14 Event evts;
15 bool delegate (Event) regFn;
16 public
14 17
15 public 18 enum {
16 Message handleRead(Conduit c) 19 Read = 1000,
17 { 20 Write,
21 Error,
22 Connect,
23 Disconnect
18 } 24 }
19 25
20 Message handleWrite(Conduit c) 26 Message handleRead()
21 { 27 {
28 return Message(cast(void*)cond, Read, 0);
22 } 29 }
23 30
24 Message handleError(Conduit c) 31 Message handleWrite()
25 { 32 {
33 return Message(cast(void*)cond, Write, 0);
26 } 34 }
27 35
28 Message handleConnect(Conduit c) 36 Message handleError()
29 { 37 {
38 return Message(cast(void*)cond, Error, 0);
30 } 39 }
31 40
32 Message handleDisconnect(Conduit c) 41 Message handleConnect()
33 { 42 {
43 return Message(cast(void*)cond, Connect, 0);
44 }
45
46 Message handleDisconnect()
47 {
48 return Message(cast(void*)cond, Disconnect, 0);
34 } 49 }
35 50
36 51
37 Conduit getConduit() 52 Conduit getConduit()
38 { 53 {
39 return cond; 54 return cond;
40 } 55 }
41 56
42 int getEvents() 57 void send(char[] buf)
58 {
59 }
60
61 Event getEvents()
43 { 62 {
44 return evts; 63 return evts;
45 } 64 }
46 65
47 void setEvents(Event e) 66 void setEvents(Event e)
48 { 67 {
49 evts e; 68 evts = e;
50 } 69 }
70
71 void setRegisterFunc( bool delegate (Event) fn)
72 {
73 regFn = fn;
74 }
51 } 75 }