17 #ifndef CLIENTSTATUS_HPP_ 
   18 #define CLIENTSTATUS_HPP_ 
   24 #include <boost/bimap.hpp> 
   27 #include "kaa/gen/EndpointGen.hpp" 
   35 enum class ClientParameterT;
 
   36 class IPersistentParameter;
 
   39           boost::bimaps::set_of<ClientParameterT>   
 
   40         , boost::bimaps::set_of<std::string>        
 
   41         , boost::bimaps::left_based
 
   89     void checkSDKPropertiesForUpdates();
 
   91     template< ClientParameterT Type, 
class ParameterData >
 
   92     void setParameterData(
const ParameterData& data);
 
   94     template< ClientParameterT Type, 
class ParameterData >
 
   95     void setParameterDataWithEqualCheck(
const ParameterData& data);
 
   97     template< ClientParameterT Type, 
class ParameterData >
 
   98     ParameterData getParameterData(
const ParameterData& defaultValue) 
const;
 
  101     const std::string filename_;
 
  102     std::map<ClientParameterT, std::shared_ptr<IPersistentParameter> > parameters_;
 
  104     bool            isSDKPropertiesForUpdated_;
 
  111     static const bimap                      parameterToToken_;
 
  112     static const std::int32_t               eventSeqNumberDefault_;
 
  113     static const bool                       isRegisteredDefault_;
 
  115     static const Topics                     topicListDefault_;
 
  116     static const std::int32_t               topicListHashDefault_;
 
  118     static const bool                       endpointDefaultAttachStatus_;
 
  119     static const std::string                endpointKeyHashDefault_;
 
  120     static const bool                       isProfileResyncNeededDefault_;
 
std::int32_t getTopicListHash()
 
std::string getEndpointAccessToken()
 
void setAttachedEndpoints(const AttachedEndpoints &endpoints)
 
void setProfileHash(HashDigest hash)
 
std::string getEndpointKeyHash() const 
 
void setEndpointAccessToken(const std::string &token)
 
std::int32_t getEventSequenceNumber() const 
 
ClientStatus(IKaaClientContext &context)
 
virtual bool isProfileResyncNeeded() const 
 
boost::bimaps::bimap< boost::bimaps::set_of< ClientParameterT >, boost::bimaps::set_of< std::string >, boost::bimaps::left_based > bimap
 
std::map< std::string, std::string > AttachedEndpoints
 
virtual void setProfileResyncNeeded(bool isNeeded)
 
void setTopicListHash(const std::int32_t topicListHash)
 
std::vector< std::uint8_t > HashDigest
 
TopicStates & getTopicStates()
 
void setEndpointAttachStatus(bool isAttached)
 
void setTopicList(const Topics &topicList)
 
Topics getTopicList() const 
 
bool isRegistered() const 
 
void setEndpointKeyHash(const std::string &keyHash)
 
void setEventSequenceNumber(std::int32_t sequenceNumber)
 
AttachedEndpoints getAttachedEndpoints() const 
 
void setRegistered(bool isRegistered)
 
HashDigest getProfileHash() const 
 
void setTopicStates(const TopicStates &subscriptions)
 
std::string refreshEndpointAccessToken()
 
bool getEndpointAttachStatus() const 
 
virtual bool isSDKPropertiesUpdated() const 
 
std::map< std::int64_t, std::int32_t > TopicStates