разделение сервера на получающую и обслуживающую часть
От: pauldr  
Дата: 11.07.06 14:10
Оценка:
Вообщем требуемый функционал,
получаем запрос по сети, обслуживаем, отправляем ответ.

Требование чтобы код обслуживающей сеть был отделен от остального,
чтобы легко было сменить протокол например.

Вот плоды моих размышлений

class NetServer;

class RpcServer {
public:    
    void connectWithNetServer(NetServer *ns_) { ns = ns_; }
    virtual ~RpcServer() {}
    virtual void callMethod() = 0;
private:
    NetServer *ns;
};

class NetServer {
public:
    NetServer(RpcServer *rpcs_) : rpcs(rpcs_) {}
    virtual ~NetServer() {}
    virtual void sendResponse() = 0;
    void callMethod() { if (rpcs) rpcs->callMethod(); }
private:
    RpcServer *rpcs;
};


Как-то кривовато, может есть более правильное решение?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.