26 class PubSubClientConnection;
33 struct ConnectServerMessage;
34 struct DisconnectServerMessage;
35 struct SendMessageServerMessage;
36 struct SubscribeToTopicServerMessage;
37 struct UnsubscribeFromTopicServerMessage;
71 typedef std::function<void(TTV_ErrorCode ec, const std::string& error, const json::Value& result)>
InternalCallback;
79 void AddListener(
const std::shared_ptr<IListener>& listener);
80 void RemoveListener(
const std::shared_ptr<IListener>& listener);
87 TTV_ErrorCode Listen(
const std::string& topic, std::shared_ptr<User> user);
Definition: pubsubclientconnection.h:99
std::weak_ptr< User > mUser
Definition: pubsubclientconnection.h:113
Enum
Definition: pubsubclientconnection.h:51
Definition: pubsubclientconnection.h:55
json::FastWriter mJsonWriter
Definition: pubsubclientconnection.h:119
Definition: pubsubclientconnection.h:46
std::shared_ptr< IWebSocket > mSocket
Definition: pubsubclientconnection.h:114
std::string nonce
Definition: pubsubclientconnection.h:103
TTV_MessageLevel
Definition: tracingtypes.h:14
uint32_t Timestamp
Definition: coretypes.h:27
std::map< std::string, TopicSubscriptionState::Enum > mTopicStates
Definition: pubsubclientconnection.h:116
PubSubState mState
Definition: pubsubclientconnection.h:122
JSON (JavaScript Object Notation).
Definition: adsapi.h:16
std::map< std::string, OutstandingRequest > mOutstandingRequests
Definition: pubsubclientconnection.h:117
std::function< void(TTV_ErrorCode ec, const std::string &error, const json::Value &result)> InternalCallback
Definition: pubsubclientconnection.h:71
std::string mReadBuffer
Definition: pubsubclientconnection.h:115
EventSource< IListener > mListeners
Definition: pubsubclientconnection.h:123
Represents a JSON value.
Definition: value.h:114
Unserialize a JSON document into a Value.
Definition: reader.h:18
Definition: eventsource.h:18
Definition: pubsubclientconnection.h:60
PubSubState GetState() const
Definition: pubsubclientconnection.h:76
uint32_t TTV_ErrorCode
Definition: errortypes.h:30
PubSubState
Definition: coretypes.h:152
InternalCallback callback
Definition: pubsubclientconnection.h:104
Definition: pubsubclientconnection.h:54
Definition: pubsubclientconnection.h:53
uint32_t GetConnectionIndex() const
Definition: pubsubclientconnection.h:96
WaitForExpiry mPongTimer
Definition: pubsubclientconnection.h:121
json::Reader mJsonReader
Definition: pubsubclientconnection.h:118
uint32_t mConnectionIndex
Definition: pubsubclientconnection.h:124
WaitForExpiry mPingTimer
Definition: pubsubclientconnection.h:120
Timestamp requestTime
Used to timeout requests.
Definition: pubsubclientconnection.h:105
Outputs a Value in JSON format without formatting (not human friendly).
Definition: writer.h:31
Definition: pubsubclientconnection.h:49