|
|
| ClientState (const ClientState &)=delete |
| |
|
| ClientState (ClientState &&)=delete |
| |
|
ClientState & | operator= (const ClientState &) &=delete |
| |
|
ClientState & | operator= (ClientState &&) &=delete |
| |
|
| ClientState (std::chrono::milliseconds mqtt_command_timeout) |
| |
|
bool | IsSessionPresent () |
| |
|
void | SetSessionPresent (bool value) |
| |
|
bool | IsConnected () |
| |
|
void | SetConnected (bool value) |
| |
|
bool | IsAutoReconnectEnabled () |
| |
|
void | SetAutoReconnectEnabled (bool value) |
| |
|
bool | IsAutoReconnectRequired () |
| |
|
void | SetAutoReconnectRequired (bool value) |
| |
|
bool | IsPingreqPending () |
| |
|
void | SetPingreqPending (bool value) |
| |
|
bool | isDisconnectCallbackPending () |
| |
|
void | setDisconnectCallbackPending (bool value) |
| |
|
virtual uint16_t | GetNextPacketId () |
| |
| virtual uint16_t | GetNextActionId () |
| | Overload for Get next Action ID. More...
|
| |
| std::chrono::seconds | GetKeepAliveTimeout () |
| | Get duration of Keep alive interval in seconds. More...
|
| |
|
void | SetKeepAliveTimeout (std::chrono::seconds keep_alive_timeout) |
| |
|
std::chrono::milliseconds | GetMqttCommandTimeout () |
| |
|
void | SetMqttCommandTimeout (std::chrono::milliseconds mqtt_command_timeout) |
| |
|
std::chrono::seconds | GetMinReconnectBackoffTimeout () |
| |
|
void | SetMinReconnectBackoffTimeout (std::chrono::seconds min_reconnect_backoff_timeout) |
| |
|
std::chrono::seconds | GetMaxReconnectBackoffTimeout () |
| |
|
void | SetMaxReconnectBackoffTimeout (std::chrono::seconds max_reconnect_backoff_timeout) |
| |
|
std::shared_ptr< ActionData > | GetAutoReconnectData () |
| |
|
void | SetAutoReconnectData (std::shared_ptr< ActionData > p_connect_data) |
| |
|
std::shared_ptr< Subscription > | GetSubscription (util::String p_topic_name) |
| |
|
std::shared_ptr< Subscription > | SetSubscriptionPacketInfo (util::String p_topic_name, uint16_t packet_id, uint8_t index_in_packet) |
| |
|
ResponseCode | SetSubscriptionActive (uint16_t packet_id, uint8_t index_in_sub_packet, mqtt::QoS max_qos) |
| |
|
ResponseCode | RemoveSubscription (uint16_t packet_id, uint8_t index_in_sub_packet) |
| |
|
ResponseCode | RemoveAllSubscriptionsForPacketId (uint16_t packet_id) |
| |
|
ResponseCode | RemoveSubscription (util::String p_topic_name) |
| |
| virtual uint16_t | GetNextActionId () |
| | Overload for Get next Action ID. More...
|
| |
| size_t | GetMaxActionQueueSize () |
| | Get current value of maximum action queue size. More...
|
| |
| void | SetMaxActionQueueSize (size_t max_queue_size) |
| | Set max size for action queue. More...
|
| |
| std::shared_ptr< std::atomic_bool > | GetCoreExecutionSyncPoint () |
| | Get pointer to sync point used for execution status of the Core instance. More...
|
| |
| void | SetProcessQueuedActions (bool process_queued_actions) |
| | Sets whether the Client is allowed to process queue actions. More...
|
| |
| bool | CanProcessQueuedActions () |
| | Get whether the Client can process queued actions. More...
|
| |
| void | ProcessOutboundActionQueue (std::shared_ptr< std::atomic_bool > thread_task_out_sync) |
| | Process the outbound action queue. More...
|
| |
| ResponseCode | PerformAction (ActionType action_type, std::shared_ptr< ActionData > action_data, std::chrono::milliseconds action_reponse_timeout) |
| | Perform Action in Blocking Mode. More...
|
| |
| ResponseCode | RegisterAction (ActionType action_type, Action::CreateHandlerPtr p_action_create_handler, std::shared_ptr< ActionState > p_action_state) |
| | Register Action for execution by Client Core. More...
|
| |
| ResponseCode | GetActionCreateHandler (ActionType action_type, Action::CreateHandlerPtr *p_action_create_handler) |
| | Get the Create Factory Method for the specified action type. More...
|
| |
| ResponseCode | EnqueueOutboundAction (ActionType action_type, std::shared_ptr< ActionData > action_data, uint16_t &action_id_out) |
| | Enqueue Action for processing in Outbound Queue. More...
|
| |
| ResponseCode | RegisterPendingAck (uint16_t action_id, ActionData::AsyncAckNotificationHandlerPtr p_async_ack_handler) |
| | Register Ack Handler for provided action id. More...
|
| |
| void | DeletePendingAck (uint16_t action_id) |
| | Delete Ack Handler for specified Action ID. More...
|
| |
| void | ForwardReceivedAck (uint16_t action_id, ResponseCode rc) |
| | Call registered Ack handler if it exists for specified Packet id. More...
|
| |
| void | DeleteExpiredAcks () |
| | Delete all expired Acks. More...
|
| |
| void | ClearRegisteredActions () |
| | Clears all registered Actions. More...
|
| |
| void | ClearOutboundActionQueue () |
| | Clears all pending outbound Actions. More...
|
| |
|
| ClientCoreState () |
| | Default Constructor.
|
| |
|
virtual | ~ClientCoreState () |
| | Destructor.
|
| |
|
| ClientCoreState (const ClientCoreState &)=delete |
| |
|
| ClientCoreState (ClientCoreState &&)=delete |
| |
|
ClientCoreState & | operator= (const ClientCoreState &) &=delete |
| |
|
ClientCoreState & | operator= (ClientCoreState &&) &=delete |
| |
| virtual uint16_t | GetNextActionId ()=0 |
| | Get Action ID of the next Action. More...
|
| |
|
| ActionState (const ActionState &)=delete |
| |
|
| ActionState (ActionState &&)=delete |
| |
|
ActionState & | operator= (const ActionState &) &=delete |
| |
|
ActionState & | operator= (ActionState &&) &=delete |
| |
|
|
bool | is_session_present_ |
| |
|
std::atomic_bool | is_connected_ |
| |
|
std::atomic_bool | is_auto_reconnect_enabled_ |
| |
|
std::atomic_bool | is_auto_reconnect_required_ |
| |
|
std::atomic_bool | is_pingreq_pending_ |
| |
|
uint16_t | last_sent_packet_id_ |
| |
|
std::chrono::seconds | keep_alive_timeout_ |
| |
|
std::chrono::seconds | min_reconnect_backoff_timeout_ |
| |
|
std::chrono::seconds | max_reconnect_backoff_timeout_ |
| |
|
std::chrono::milliseconds | mqtt_command_timeout_ |
| |
|
std::shared_ptr< ActionData > | p_connect_data_ |
| |
|
std::atomic_bool | trigger_disconnect_callback_ |
| |
|
std::atomic< uint16_t > | next_action_id_ |
| | Atomic, ID of the next Action that will be enqueued.
|
| |
|
std::atomic_int | cur_core_threads_ |
| | Atomic, Count of currently running core threads.
|
| |
|
std::atomic_int | max_hardware_threads_ |
| | Atomic, Count of the maximum allowed hardware threads.
|
| |
|
std::atomic_size_t | max_queue_size_ |
| | Atomic, Current configured max queue size.
|
| |
|
std::chrono::seconds | ack_timeout_ |
| | Timeout for pending Acks, older Acks are deleted with a failed response.
|
| |
|
std::mutex | register_action_lock_ |
| | Mutex for Register Action Request flow.
|
| |
|
std::mutex | ack_map_lock_ |
| | Mutex for Ack Map operations.
|
| |
|
std::mutex | sync_action_request_lock_ |
| | Mutex for Sync Action Request flow.
|
| |
|
std::mutex | sync_action_response_lock_ |
| | Mutex for Sync Action Response flow.
|
| |
|
std::condition_variable | sync_action_response_wait_ |
| | Condition variable used to wake up calling thread on Sync Action response.
|
| |
|
ResponseCode | sync_action_response_ |
| | Variable to store received Sync Action response.
|
| |
|
std::atomic_bool | process_queued_actions_ |
| | Atomic, indicates whether currently queued Actions should be processed or not.
|
| |
|
std::shared_ptr< std::atomic_bool > | continue_execution_ |
| | Atomic, Used to synchronize running threads, false value causes running threads to stop.
|
| |
|
util::Map< ActionType, std::unique_ptr< Action > > | action_map_ |
| | Map containing currently initialized Action Instances.
|
| |
|
util::Map< uint16_t, std::unique_ptr< PendingAckData > > | pending_ack_map_ |
| | Map containing currently pending Acks.
|
| |
|
util::Map< ActionType, Action::CreateHandlerPtr > | action_create_handler_map_ |
| | Map containing currently registered Action Types and corrosponding Factories.
|
| |
|
util::Queue< std::pair< ActionType, std::shared_ptr< ActionData > > > | outbound_action_queue_ |
| | Queue of outbound actions.
|
| |