24#ifndef MESSAGE_SERVICE_H
25#define MESSAGE_SERVICE_H
Abortable synchronized queue extends synchronized queue allowing to abort methods waiting for element...
Definition: plugin_utils.h:272
Definition: group_service_message.h:34
Handles the deliver of recv service messages to subscribed modules.
Definition: message_service.h:45
bool m_aborted
Thread was terminated.
Definition: message_service.h:91
thread_state m_message_service_thd_state
The state of the thread.
Definition: message_service.h:99
mysql_cond_t m_message_service_run_cond
The thread signal mechanism to be terminated.
Definition: message_service.h:97
bool notify_message_service_recv(Group_service_message *service_message)
It will notify recv subscribers with a service message.
Definition: message_service.cc:273
Abortable_synchronized_queue< Group_service_message * > * m_incoming
Queue with service message to be delivered.
Definition: message_service.h:101
void dispatcher()
Main loop that checks message availability.
Definition: message_service.cc:149
int terminate()
Terminate delivering message thread.
Definition: message_service.cc:237
Message_service_handler()
Create a message service handler to deliver messages to recv subscribers.
Definition: message_service.cc:89
mysql_mutex_t m_message_service_run_lock
The thread lock to control access.
Definition: message_service.h:95
my_thread_handle m_message_service_pthd
The current phase.
Definition: message_service.h:93
int initialize()
Initialize thread that will deliver messages.
Definition: message_service.cc:119
void add(Group_service_message *message)
Add to queue a new message to be deliver to recv service subscribers.
Definition: message_service.cc:256
virtual ~Message_service_handler()
Definition: message_service.cc:99
bool unregister_gr_message_service_send()
Unregister default send message service.
Definition: message_service.cc:74
bool register_gr_message_service_send()
Register default send message service.
Definition: message_service.cc:57
Specifies macros to define Service Implementations.
Definition: my_thread_bits.h:58
An instrumented cond structure.
Definition: mysql_cond_bits.h:50
An instrumented mutex structure.
Definition: mysql_mutex_bits.h:50
Definition: plugin_utils.h:48