view 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 source

module dreactor.protocol.DefaultProvider;

import tango.io.selector.model.ISelector;
import tango.io.device.Conduit;

import dreactor.protocol.IProvider;



class DefaultProvider : IProvider
{
private
    Conduit cond;
    Event evts;
    bool delegate (Event) regFn;
public

    enum {
        Read = 1000,
        Write,
        Error,
        Connect,
        Disconnect
    }

    Message handleRead()
    {
        return Message(cast(void*)cond, Read, 0); 
    }

    Message handleWrite()
    {
        return Message(cast(void*)cond, Write, 0); 
    }

    Message handleError()
    {
        return Message(cast(void*)cond, Error, 0); 
    }

    Message handleConnect()
    {
        return Message(cast(void*)cond, Connect, 0); 
    }

    Message handleDisconnect()
    {
        return Message(cast(void*)cond, Disconnect, 0); 
    }


    Conduit getConduit()
    {
        return cond;
    }

    void send(char[] buf)
    {
    }

    Event getEvents()
    {
        return evts;
    }

    void setEvents(Event e)
    {
        evts = e;
    }
    
    void setRegisterFunc( bool delegate (Event) fn)
    {
        regFn = fn;
    } 
}