40 virtual ~SubscribeClient();
42 virtual SubscriptionToken Subscribe(
44 SubscriptionToken::OnMessageCb on_message_cb,
48 SubscriptionToken Subscribe(std::string channel, SubscriptionToken::OnMessageCb on_message_cb) {
49 return Subscribe(std::move(channel), std::move(on_message_cb), {});
52 virtual SubscriptionToken Psubscribe(
54 SubscriptionToken::OnPmessageCb on_pmessage_cb,
58 virtual size_t ShardsCount()
const = 0;
59 virtual bool IsInClusterMode()
const = 0;
61 SubscriptionToken Psubscribe(std::string pattern, SubscriptionToken::OnPmessageCb on_pmessage_cb) {
62 return Psubscribe(std::move(pattern), std::move(on_pmessage_cb), {});
65 virtual SubscriptionToken Ssubscribe(
67 SubscriptionToken::OnMessageCb on_message_cb,
74 std::vector<std::string> channels,
75 SubscriptionToken::OnMessageCb on_message_cb,
81 std::vector<std::string> patterns,
82 SubscriptionToken::OnPmessageCb on_message_cb,
88 std::vector<std::string> channels,
89 SubscriptionToken::OnMessageCb on_message_cb,
93 SubscriptionToken Ssubscribe(std::string channel, SubscriptionToken::OnMessageCb on_message_cb) {
94 return Ssubscribe(std::move(channel), std::move(on_message_cb), {});
97 SubscriptionToken Ssubscribe(std::vector<std::string> channels, SubscriptionToken::OnMessageCb on_message_cb) {
98 return Ssubscribe(std::move(channels)
, std::move(on_message_cb)
, {}
);
101 SubscriptionToken Psubscribe(std::vector<std::string> patterns, SubscriptionToken::OnPmessageCb on_message_cb) {
102 return Psubscribe(std::move(patterns)
, std::move(on_message_cb)
, {}
);