(
conststd::shared_ptr<network::tcp_client_iface>& tcp_client);
90 typedefstd::function<void(const std::string& host, std::size_t port, connect_state status)>
connect_callback_t;
103 conststd::string& host =
"127.0.0.1",
104std::size_t port = 6379,
105 constconnect_callback_t& connect_callback =
nullptr,
106std::uint32_t timeout_msecs = 0,
107std::int32_t max_reconnects = 0,
108std::uint32_t reconnect_interval_msecs = 0);
120 conststd::string& name,
121 constconnect_callback_t& connect_callback =
nullptr,
122std::uint32_t timeout_msecs = 0,
123std::int32_t max_reconnects = 0,
124std::uint32_t reconnect_interval_msecs = 0);
136 void disconnect(
boolwait_for_removal =
false);
164 subscriber&
auth(
conststd::string& password,
constreply_callback_t& reply_callback =
nullptr);
189 subscriber&
subscribe(
conststd::string& channel,
constsubscribe_callback_t& callback,
constacknowledgement_callback_t& acknowledgement_callback =
nullptr);
202 subscriber&
psubscribe(
conststd::string& pattern,
constsubscribe_callback_t& callback,
constacknowledgement_callback_t& acknowledgement_callback =
nullptr);
238 void add_sentinel(
conststd::string& host, std::size_t port, std::uint32_t timeout_msecs = 0);
264 structcallback_holder {
265subscribe_callback_t subscribe_callback;
266acknowledgement_callback_t acknowledgement_callback;
291 voidhandle_acknowledgement_reply(
conststd::vector<reply>&
reply);
299 voidhandle_subscribe_reply(
conststd::vector<reply>&
reply);
307 voidhandle_psubscribe_reply(
conststd::vector<reply>&
reply);
317 voidcall_acknowledgement_callback(
conststd::string& channel,
conststd::map<std::string, callback_holder>& channels, std::mutex& channels_mtx, int64_t nb_chans);
324 voidreconnect(
void);
329 voidre_auth(
void);
334 voidre_subscribe(
void);
339 boolshould_reconnect(
void)
const;
344 voidsleep_before_next_reconnect_attempt(
void);
349 voidclear_subscriptions(
void);
360 voidunprotected_subscribe(
conststd::string& channel,
constsubscribe_callback_t& callback,
constacknowledgement_callback_t& acknowledgement_callback);
370 voidunprotected_psubscribe(
conststd::string& pattern,
constsubscribe_callback_t& callback,
constacknowledgement_callback_t& acknowledgement_callback);
376std::string m_redis_server;
380std::size_t m_redis_port = 0;
384std::string m_master_name;
388std::string m_password;
403std::uint32_t m_connect_timeout_msecs = 0;
407std::int32_t m_max_reconnects = 0;
411std::int32_t m_current_reconnect_attempts = 0;
415std::uint32_t m_reconnect_interval_msecs = 0;
420std::atomic_bool m_reconnecting;
424std::atomic_bool m_cancel;
429std::map<std::string, callback_holder> m_subscribed_channels;
433std::map<std::string, callback_holder> m_psubscribed_channels;
438connect_callback_t m_connect_callback;
443std::mutex m_psubscribed_channels_mutex;
447std::mutex m_subscribed_channels_mutex;
452reply_callback_t m_auth_reply_callback;
void clear_sentinels(void)
Definition: redis_connection.hpp:45
Definition: subscriber.hpp:43
std::function< void(const std::string &host, std::size_t port, connect_state status)> connect_callback_t
Definition: subscriber.hpp:90
subscriber & psubscribe(const std::string &pattern, const subscribe_callback_t &callback, const acknowledgement_callback_t &acknowledgement_callback=nullptr)
subscriber & commit(void)
std::function< void(reply &)> reply_callback_t
Definition: subscriber.hpp:153
subscriber & operator=(const subscriber &)=delete
assignment operator
bool is_reconnecting(void) const
std::function< void(int64_t)> acknowledgement_callback_t
Definition: subscriber.hpp:176
connect_state
Definition: subscriber.hpp:76
void cancel_reconnect(void)
subscriber & auth(const std::string &password, const reply_callback_t &reply_callback=nullptr)
Definition: sentinel.hpp:40
void add_sentinel(const std::string &host, std::size_t port, std::uint32_t timeout_msecs=0)
void disconnect(bool wait_for_removal=false)
const sentinel & get_sentinel(void) const
subscriber & punsubscribe(const std::string &pattern)
subscriber & unsubscribe(const std::string &channel)
void connect(const std::string &host="127.0.0.1", std::size_t port=6379, const connect_callback_t &connect_callback=nullptr, std::uint32_t timeout_msecs=0, std::int32_t max_reconnects=0, std::uint32_t reconnect_interval_msecs=0)
std::function< void(const std::string &, const std::string &)> subscribe_callback_t
Definition: subscriber.hpp:170
bool is_connected(void) const
subscriber & subscribe(const std::string &channel, const subscribe_callback_t &callback, const acknowledgement_callback_t &acknowledgement_callback=nullptr)
Definition: array_builder.hpp:29
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4