Mercurial > projects > dreactor
diff 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 |
line wrap: on
line diff
--- a/dreactor/protocol/DefaultProvider.d Wed Aug 27 00:47:33 2008 -0400 +++ b/dreactor/protocol/DefaultProvider.d Sat Sep 20 18:33:11 2008 -0400 @@ -1,6 +1,7 @@ module dreactor.protocol.DefaultProvider; -import tango.io.Selector; +import tango.io.selector.model.ISelector; +import tango.io.device.Conduit; import dreactor.protocol.IProvider; @@ -10,27 +11,41 @@ { private Conduit cond; - Events evts; - + Event evts; + bool delegate (Event) regFn; public - Message handleRead(Conduit c) - { + + enum { + Read = 1000, + Write, + Error, + Connect, + Disconnect } - Message handleWrite(Conduit c) + Message handleRead() { + return Message(cast(void*)cond, Read, 0); } - Message handleError(Conduit c) + Message handleWrite() { + return Message(cast(void*)cond, Write, 0); } - Message handleConnect(Conduit c) + Message handleError() { + return Message(cast(void*)cond, Error, 0); } - Message handleDisconnect(Conduit c) + Message handleConnect() { + return Message(cast(void*)cond, Connect, 0); + } + + Message handleDisconnect() + { + return Message(cast(void*)cond, Disconnect, 0); } @@ -39,13 +54,22 @@ return cond; } - int getEvents() + void send(char[] buf) + { + } + + Event getEvents() { return evts; } void setEvents(Event e) { - evts e; + evts = e; } + + void setRegisterFunc( bool delegate (Event) fn) + { + regFn = fn; + } }