17 #ifndef KAACLIENT_HPP_
18 #define KAACLIENT_HPP_
27 #include "kaa/event/gen/EventFamilyFactory.hpp"
50 #ifdef KAA_USE_CONFIGURATION
51 typedef std::shared_ptr<DefaultDeltaManager> DefaultDeltaManagerPtr;
74 #ifdef KAA_USE_CONFIGURATION
75 virtual ISchemaPersistenceManager& getSchemaPersistenceManager() {
return *schemaPersistenceManager_; }
76 virtual IConfigurationPersistenceManager& getConfigurationPersistenceManager() {
return *configurationPersistenceManager_; }
77 virtual IDeltaManager& getDeltaManager() {
return *deltaManager_; }
78 virtual IConfigurationManager& getConfigurationManager() {
return *configurationManager_; }
80 #ifdef KAA_USE_NOTIFICATIONS
81 virtual INotificationManager& getNotificationManager() {
return *notificationManager_; }
84 virtual IEndpointRegistrationManager& getEndpointRegistrationManager() {
return *registrationManager_; }
85 virtual EventFamilyFactory& getEventFamilyFactory() {
return *eventFamilyFactory_; }
86 virtual IEventListenersResolver& getEventListenersResolver() {
return *eventManager_; }
90 #ifdef KAA_USE_LOGGING
91 virtual ILogCollector& getLogCollector() {
return *logCollector_; }
98 void initKaaConfiguration();
99 void initKaaTransport();
100 void initClientKeys();
102 void setDefaultConfiguration();
111 std::unique_ptr<ProfileManager> profileManager_;
112 #ifdef KAA_USE_NOTIFICATIONS
113 std::unique_ptr<NotificationManager> notificationManager_;
117 std::string publicKeyHash_;
119 #ifdef KAA_USE_CONFIGURATION
120 ISchemaProcessorPtr schemaProcessor_;
121 DefaultDeltaManagerPtr deltaManager_;
122 IConfigurationManagerPtr configurationManager_;
123 IConfigurationProcessorPtr configurationProcessor_;
124 ISchemaPersistenceManagerPtr schemaPersistenceManager_;
125 IConfigurationPersistenceManagerPtr configurationPersistenceManager_;
127 #ifdef KAA_USE_EVENTS
128 std::unique_ptr<EventManager> eventManager_;
129 std::unique_ptr<EventFamilyFactory> eventFamilyFactory_;
130 std::unique_ptr<EndpointRegistrationManager> registrationManager_;
132 std::unique_ptr<IKaaChannelManager> channelManager_;
133 std::unique_ptr<BootstrapDataProcessor> bootstrapProcessor_;
134 std::unique_ptr<OperationsDataProcessor> operationsProcessor_;
136 #ifdef KAA_DEFAULT_BOOTSTRAP_HTTP_CHANNEL
137 std::unique_ptr<DefaultBootstrapChannel> bootstrapChannel_;
139 #ifdef KAA_DEFAULT_TCP_CHANNEL
140 std::unique_ptr<DefaultOperationTcpChannel> opsTcpChannel_;
142 #ifdef KAA_DEFAULT_OPERATION_HTTP_CHANNEL
143 std::unique_ptr<DefaultOperationHttpChannel> opsHttpChannel_;
145 #ifdef KAA_DEFAULT_LONG_POLL_CHANNEL
146 std::unique_ptr<DefaultOperationLongPollChannel> opsLongPollChannel_;
148 #ifdef KAA_USE_LOGGING
149 std::unique_ptr<LogCollector> logCollector_;
virtual IProfileManager & getProfileManager()
std::pair< Botan::MemoryVector< std::uint8_t >, std::string > KeyPair
virtual IKaaDataDemultiplexer & getBootstrapDemultiplexer()
virtual IKaaChannelManager & getChannelManager()
void init(int options=KAA_DEFAULT_OPTIONS)
virtual IKaaDataDemultiplexer & getOperationDemultiplexer()
virtual IKaaDataMultiplexer & getBootstrapMultiplexer()
std::shared_ptr< IBootstrapManager > IBootstrapManagerPtr
std::shared_ptr< IKaaClientStateStorage > IKaaClientStateStoragePtr
static const int KAA_DEFAULT_OPTIONS
virtual IKaaDataMultiplexer & getOperationMultiplexer()
virtual const KeyPair & getClientKeyPair()