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

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

so_4::rt::comm::def_disconnect_handler_t so_4::rt::comm::no_op_disconnect_handler_t

Полный список членов класса


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

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

Начиная с:
v.4.2.4, 4.4.0-b4
Транспортные агенты для исходящих соединений при разрывах связи только рассылают сообщение so_4::rt::comm::msg_client_disconnected. Попыток восстановить связь не предпринимается.

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

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

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

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

Заметки:
В предшествующих версиях SObjectizer-а класс disconnect_handler_t был вложен в класс a_cln_channel_base_t.
См. также:
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::disconnect_handler_t::on_connection_fail ( const std::string &  agent  )  [pure virtual]

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

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

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

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

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

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

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

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

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


Документация по SObjectizer v.4.4 'Тебуломста'. Последние изменения: Thu Sep 18 10:26:49 2008. Создано системой  doxygen1.5.6 Intervale SourceForge.net Logo