Класс so_4::rt::comm::a_cln_channel_base_t::disconnect_handler_t

Граф наследования:so_4::rt::comm::a_cln_channel_base_t::disconnect_handler_t:

so_4::rt::comm::a_cln_channel_impl::def_disconnect_handler_t Полный список членов класса

Подробное описание

Обработчик обрывов связи.

Начиная с:
v.4.2.4
Стандартная реализация агента a_cln_channel_base_t при разрывах связи только рассылает сообщение so_4::rt::comm::msg_client_disconnected. Попыток восстановить связь не предпринимается.

В некоторых случаях необходимо, чтобы сам клиентский канал пытался восстановить соединение. Но режим восстановления может зависеть от требований задачи. В некоторых случаях требуется предпринять три попытки подряд. В некоторых -- повторять попытки через фиксированные интервалы времени. В некоторых -- размер интервала времени между попытками определяется исходя из текущих условий.

Для того, чтобы в конкретной задаче клиентский канал можно было настроить на конкретную логику предназначен интерфейс disconnect_handler_t.

Производный класс должен соответствующим образом переопределить методы on_connection_fail() и on_connection_lost().

SObjectizer предоставляет реализацию интерфейса diconnect_handler_t, которая при разрывах связи отсылает агенту-клиентскому каналу отложенное сообщение msg_connect. См. create_def_disconnect_handler();


Открытые члены

virtual void on_connection_fail (const std::string &agent)=0
 Обработчик неудачного установления соединения.
virtual void on_connection_lost (const std::string &agent)=0
 Обработчик разрыва соединения.


Методы

virtual void so_4::rt::comm::a_cln_channel_base_t::disconnect_handler_t::on_connection_fail const std::string &  agent  )  [pure virtual]
 

Обработчик неудачного установления соединения.

Вызывается, если не удалось установить соединения с серверным сокетом.

Аргументы:
agent  Агент, который пытался установить соединение.

Замещается в so_4::rt::comm::a_cln_channel_impl::def_disconnect_handler_t.

virtual void so_4::rt::comm::a_cln_channel_base_t::disconnect_handler_t::on_connection_lost const std::string &  agent  )  [pure virtual]
 

Обработчик разрыва соединения.

Вызывается при обнаружении разрыва ранее установленного соединения.

Аргументы:
agent  Агент, который поддерживал соединение.

Замещается в so_4::rt::comm::a_cln_channel_impl::def_disconnect_handler_t.


Документация по SObjectizer. Последние изменения: Thu Jan 12 10:52:51 2006. Создано системой  doxygen 1.4.6-NO
Hosted by uCoz