Zigbee Protocol Controller 1.6.0
ota_cache.hpp File Reference

Caching of image information. More...

#include "ota.hpp"
#include <memory>
#include <map>
#include <vector>
#include "sys/ctimer.h"

Go to the source code of this file.

Classes

struct  timeout_handler
 Setting the image callback for a specific image key. More...
 
class  TimeoutHandler
 Handling timeout data and ctimers sharing data. More...
 

Namespaces

namespace  ImageHandler
 The ImageFileHandler controls and operates availability of an image file. This class encapsulates following control:
 
namespace  image_file_handler
 
namespace  UnidStateHandler
 Handling UNID state for OTA.
 
namespace  unid_state_handler
 

Typedefs

using endpoint_cache_t = uint8_t
 Type definition for endpoint caching. More...
 
typedef struct timeout_handler timeout_handler_t
 Setting the image callback for a specific image key. More...
 

Functions

void image_file_handler::set_image_meta_info (const std::string &key, const uic_ota::meta_t &meta_info)
 Setting image filename. More...
 
uic_ota::meta_t image_file_handler::get_image_meta_info (const std::string &key)
 Get image meta info. More...
 
void image_file_handler::remove_image_meta_info (const std::string &key)
 Remove image meta info. More...
 
bool image_file_handler::check_if_meta_info_received (const std::string &key)
 Checks if meta info is received for image key. More...
 
void image_file_handler::set_images_received_cached_filepath (const std::string &key, const std::string &filepath)
 Set image which is received and cache it. More...
 
std::string image_file_handler::get_image_cached_filepath (const std::string &key)
 Get image which is received and cached. More...
 
bool image_file_handler::is_image_received_and_cached (const std::string &key)
 Check if image is received and cached. More...
 
void image_file_handler::clear_images_cache ()
 Clear out cache of images. More...
 
void unid_state_handler::set_unid_poll (std::shared_ptr< TimeoutHandler > timeout_handler)
 Setting image status of a specific image key. More...
 
void unid_state_handler::pop_unid_poll (const std::string &unid)
 Pop key from image key poll. More...
 
bool unid_state_handler::get_unid_poll_state (const std::string &unid)
 Get image key poll state. More...
 
void unid_state_handler::set_unid_poll_state_true (const std::string &unid)
 Set UNID poll state. More...
 
bool unid_state_handler::is_unid_in_poll (const std::string &unid)
 Check if UNID in poll. More...
 
uic_ota::image_ready_funct_t unid_state_handler::get_unid_callback (const std::string &unid)
 Get the image callback for a specific image key. More...
 
bool unid_state_handler::is_poll_topic_subscribed (const std::string &topic)
 Check if the topic is already subscribed. More...
 
void unid_state_handler::set_unid_listening (const std::string &uiid, const std::string &unid)
 Set UNID to listening on UIID. More...
 
std::vector< std::string > unid_state_handler::get_unids_listening (const std::string &uiid)
 Get all UNIDs listening to a specific UIID. More...
 
std::size_t unid_state_handler::get_unids_listening_count (const std::string &uiid)
 Get count of listening UNIDs to a UIID. More...
 
void unid_state_handler::remove_unid_listening (const std::string &uiid, const std::string &unid)
 Remove UNID listening on UIID. More...
 
std::vector< std::string > unid_state_handler::get_uiids_unid_is_listening_to (const std::string &unid)
 Get all UIIDs which a single UNID is listening to. More...
 
std::map< std::string, std::vector< std::string >, std::less<> > unid_state_handler::get_uiids_and_unids_listening ()
 Get all UIIDs and UNIDs active. More...
 
void unid_state_handler::set_status_published_cached (const dotdot_unid_t &unid, const dotdot_endpoint_id_t &ep)
 Set UNID and endpoint as published to. More...
 
bool unid_state_handler::is_status_published (const dotdot_unid_t &unid, const dotdot_endpoint_id_t &ep)
 Check if UNID and ep has been published to. More...
 
std::map< std::string, std::vector< endpoint_cache_t >, std::less<> > unid_state_handler::get_map_status_published_cached_and_clear ()
 Get map of published UNID and endpoints. More...
 
std::vector< endpoint_cache_tunid_state_handler::get_endpoints_status_published_and_pop (const dotdot_unid_t &unid)
 Get published status updates on UNID and pop. More...
 

Detailed Description

Caching of image information.

This component exposes tools for caching image information for the OTA.

Typedef Documentation

◆ endpoint_cache_t

using endpoint_cache_t = uint8_t

Type definition for endpoint caching.

◆ timeout_handler_t

Setting the image callback for a specific image key.

Parameters
keyimage key.
stateif the image callback has been activated.
image_ready_cbthe image ready callback.
timeout_timerthe ctimer.