17 #ifndef IKAACLIENT_HPP_ 
   18 #define IKAACLIENT_HPP_ 
   24 #include "kaa/notification/gen/NotificationDefinitions.hpp" 
   27 #include "kaa/configuration/gen/ConfigurationDefinitions.hpp" 
   42 class EventFamilyFactory;
 
   43 class IKaaChannelManager;
 
   44 class IKaaDataMultiplexer;
 
   45 class IKaaDataDemultiplexer;
 
   46 class IConfigurationReceiver;
 
   62     virtual void start() = 0;
 
   67     virtual void stop() = 0;
 
   72     virtual void pause() = 0;
 
  205     virtual void subscribeToTopics(
const std::list<std::int64_t>& idList, 
bool forceSync = 
true) = 0;
 
  239     virtual void unsubscribeFromTopics(
const std::list<std::int64_t>& idList, 
bool forceSync = 
true) = 0;
 
  297     virtual void attachEndpoint(
const std::string&  endpointAccessToken
 
  328     virtual void attachUser(
const std::string& userExternalId, 
const std::string& userAccessToken
 
  331     virtual void attachUser(
const std::string& userExternalId, 
const std::string& userAccessToken
 
The listener which receives updates on available topics. 
 
virtual void setProfileContainer(IProfileContainerPtr container)=0
Sets profile container implemented by the user. 
 
std::shared_ptr< ILogDeliveryListener > ILogDeliveryListenerPtr
 
std::shared_ptr< IFailoverStrategy > IFailoverStrategyPtr
 
virtual void updateProfile()=0
Notifies server about profile changes. 
 
virtual void removeConfigurationListener(IConfigurationReceiver &receiver)=0
 
virtual void setConfigurationStorage(IConfigurationStoragePtr storage)=0
 
virtual void attachUser(const std::string &userExternalId, const std::string &userAccessToken, IUserAttachCallbackPtr listener=IUserAttachCallbackPtr())=0
Attaches the current endpoint to the specifier user. The user verification is carried out by the defa...
 
virtual std::string refreshEndpointAccessToken()=0
Generate new access token for a current endpoint. 
 
virtual IKaaChannelManager & getChannelManager()=0
Retrieves the Channel Manager. 
 
virtual void subscribeToTopics(const std::list< std::int64_t > &idList, bool forceSync=true)=0
Subscribes to the specified list of optional topics to receive notifications on those topics...
 
virtual IKaaDataMultiplexer & getBootstrapMultiplexer()=0
Retrieves Kaa bootstrap data multiplexer. 
 
virtual void setEndpointAccessToken(const std::string &token)=0
Set new access token for a current endpoint. 
 
std::shared_ptr< IDetachEndpointCallback > IDetachEndpointCallbackPtr
 
virtual void setLogUploadStrategy(ILogUploadStrategyPtr strategy)=0
Sets the new log upload strategy. 
 
virtual IKaaDataDemultiplexer & getBootstrapDemultiplexer()=0
Retrieves Kaa bootstrap data demultiplexer. 
 
virtual void attachEndpoint(const std::string &endpointAccessToken, IAttachEndpointCallbackPtr listener=IAttachEndpointCallbackPtr())=0
Attaches the specified endpoint to the user to which the current endpoint is attached. 
 
virtual void setLogDeliveryListener(ILogDeliveryListenerPtr listener)=0
Set a listener which receives a delivery status of each log bucket. 
 
virtual void start()=0
Starts Kaa's workflow. 
 
virtual void syncTopicSubscriptions()=0
Sends subscription request(s) to the Operations server. 
 
virtual EventFamilyFactory & getEventFamilyFactory()=0
 
std::shared_ptr< IProfileContainer > IProfileContainerPtr
 
virtual const KeyPair & getClientKeyPair()=0
Retrieves the client's public and private key. 
 
virtual void pause()=0
Pauses Kaa's workflow. 
 
std::shared_ptr< ILogStorage > ILogStoragePtr
 
virtual void setAttachStatusListener(IAttachStatusListenerPtr listener)=0
Sets listener to notify of the current endpoint is attached/detached by another one. 
 
virtual std::string getEndpointAccessToken()=0
Retrieve an access token for a current endpoint. 
 
The listener which receives notifications on the specified topic. 
 
virtual Topics getTopics()=0
Retrieves the list of available topics. 
 
virtual void resume()=0
Resumes Kaa's workflow. 
 
std::shared_ptr< IConfigurationStorage > IConfigurationStoragePtr
 
virtual void addNotificationListener(INotificationListener &listener)=0
Adds the listener which receives notifications on all available topics. 
 
std::shared_ptr< IAttachStatusListener > IAttachStatusListenerPtr
 
virtual RecordFuture addLogRecord(const KaaUserLogRecord &record)=0
Adds a new log record to the log storage. 
 
virtual IKaaClientContext & getKaaClientContext()=0
Retrieves Kaa context data. 
 
std::shared_ptr< IUserAttachCallback > IUserAttachCallbackPtr
 
virtual void unsubscribeFromTopic(std::int64_t id, bool forceSync=true)=0
Unsubscribes from the specified optional topic to stop receiving notifications on that topic...
 
virtual void detachEndpoint(const std::string &endpointKeyHash, IDetachEndpointCallbackPtr listener=IDetachEndpointCallbackPtr())=0
Detaches the specified endpoint from the user to which the current endpoint is attached. 
 
virtual void unsubscribeFromTopics(const std::list< std::int64_t > &idList, bool forceSync=true)=0
Unsubscribes from the specified list of optional topics to stop receiving notifications on those topi...
 
virtual void stop()=0
Stops Kaa's workflow. 
 
virtual void addConfigurationListener(IConfigurationReceiver &receiver)=0
 
NOTE: THIS FILE IS AUTO-GENERATED. DO NOT EDIT IT MANUALLY. 
 
virtual void addTopicListListener(INotificationTopicListListener &listener)=0
Adds the listener which receives updates on the list of available topics. 
 
virtual IKaaDataDemultiplexer & getOperationDemultiplexer()=0
Retrieves Kaa operations data demultiplexer. 
 
virtual void removeNotificationListener(INotificationListener &listener)=0
Removes the listener which receives notifications on all available topics. 
 
std::shared_ptr< IFetchEventListeners > IFetchEventListenersPtr
 
std::shared_ptr< ILogUploadStrategy > ILogUploadStrategyPtr
 
virtual void removeTopicListListener(INotificationTopicListListener &listener)=0
Removes listener which receives updates on the list of available topics. 
 
virtual std::int32_t findEventListeners(const std::list< std::string > &eventFQNs, IFetchEventListenersPtr listener)=0
Submits an event listeners resolution request. 
 
virtual bool isAttachedToUser()=0
Checks if the current endpoint is already attached to some user. 
 
virtual void subscribeToTopic(std::int64_t id, bool forceSync=true)=0
Subscribes to the specified optional topic to receive notifications on that topic. 
 
virtual void setLogStorage(ILogStoragePtr storage)=0
Sets the new log storage. 
 
std::shared_ptr< IAttachEndpointCallback > IAttachEndpointCallbackPtr
 
virtual IKaaDataMultiplexer & getOperationMultiplexer()=0
Retrieves Kaa operations data multiplexer. 
 
virtual void setFailoverStrategy(IFailoverStrategyPtr strategy)=0
 
virtual const KaaRootConfiguration & getConfiguration()=0