Граф наследования:so_4::rt::comm::a_cln_channel_base_t:
Если создание клиентского сокета прошло успешно, то рассылается сообщение msg_success. В противном случае рассылается сообщение msg_fail.
Открытые члены | |
a_cln_channel_base_t (const std::string &agent_name, channels_impl::cln_channel_t *impl) | |
Инициализирующий конструктор. | |
virtual const char * | so_query_type () const |
Имя типа агента. | |
virtual void | so_on_subscription () |
Подписка агента. | |
virtual void | so_on_deregistration () |
Обработка дерегистрации агента. | |
void | evt_start (const event_data_t &, const so_4::rt::msg_start *) |
Реакция на появление агента в SObjectizer. | |
void | evt_connect (const event_data_t &, const msg_connect *) |
установления соединения. | |
void | evt_close_channel (const event_data_t &, const so_4::rt::comm::msg_close_channel *cmd) |
соединения. | |
void | evt_send_package (const event_data_t &, const so_4::rt::comm::msg_send_package *cmd) |
Реакция на необходимость отправки SOP-пакета. | |
void | evt_do_io (const event_data_t &data, const msg_do_io *) |
ввода-вывода. | |
void | evt_unblock_channel (const event_data_t &, const so_4::rt::comm::msg_unblock_channel *cmd) |
Необходимо разблокировать канал. | |
disconnect_handler_t * | set_disconnect_handler (disconnect_handler_t *handler) |
Установить обработчик разрывов связи. | |
void | set_in_threshold (const threshold_t &value) |
новых каналов. | |
const threshold_t & | in_threshold () const |
Получить текущее значения порога входного потока. | |
void | set_out_threshold (const threshold_t &value) |
новых каналов. | |
const threshold_t & | out_threshold () const |
Получить текущее значения порога выходного потока. | |
Открытые статические члены | |
static disconnect_handler_t * | create_def_disconnect_handler (unsigned int reconnect_timeout, unsigned int restore_timeout) |
Создать реализацию интерфейса disconnect_handler_t. | |
Защищенные данные | |
auto_ptr_3::obj_ptr_t< channels_impl::cln_channel_t > | m_impl |
Классы | |
class | disconnect_handler_t |
Обработчик обрывов связи. Подробнее... | |
struct | msg_connect |
соединения. Подробнее... | |
struct | msg_do_io |
ввода-вывода. Подробнее... | |
struct | msg_fail |
Сообщение о неудачном создании канала. Подробнее... | |
struct | msg_success |
Сообщение об успешном создании канала. Подробнее... |
|
Инициализирующий конструктор.
|
|
Создать реализацию интерфейса disconnect_handler_t. Данная реализация в методе disconnect_handler_t::on_connection_fail() отсылает отложенное сообщение a_cln_channel_base_t::msg_connect используя в качестве задержки значение reconnect_timeout. В методе disconnect_handler_t::on_connection_lost() отсылается сообщение a_cln_channel_base_t::msg_connect используя в качестве задержки значение restore_timeout.
|
|
соединения.
|
|
установления соединения. Производится попытка создания клиентского канала связи и подключения к серверу.
|
|
ввода-вывода. См. msg_do_io
|
|
Реакция на необходимость отправки SOP-пакета. Если данные должны быть отправлены в текущее соединение, то они помещаются в буфер ожидающих отправки данных.
|
|
Реакция на появление агента в SObjectizer. Производится попытка создания клиентского канала связи и подключения к серверу.
|
|
Необходимо разблокировать канал.
|
|
Получить текущее значения порога входного потока.
|
|
Получить текущее значения порога выходного потока.
|
|
Установить обработчик разрывов связи. Установливаемый обработчик должен быть указателем на динамически-созданный объект, который будет уничтожен в деструкторе.
|
|
новых каналов.
|
|
новых каналов.
|
|
Обработка дерегистрации агента. Канал закрывается. Переопределяет метод предка so_4::rt::agent_t. |
|
Подписка агента. Подписываются только события evt_start, evt_connect, evt_do_io. Замещает so_4::rt::agent_t. Переопределяется в so_4::rt::comm::a_cln_channel_t, so_4::rt::comm::a_raw_cln_channel_t и so_4::rt::comm::a_sockcln_t. |
|
Имя типа агента. Автоматически реализуется описанием класса агента посредством макросов SOL4_CLASS_START, SOL4_CLASS_FINISH. Замещает so_4::rt::agent_t. Переопределяется в so_4::rt::comm::a_cln_channel_t, so_4::rt::comm::a_raw_cln_channel_t и so_4::rt::comm::a_sockcln_t. |