17 #ifndef EVENTMANAGER_HPP_ 
   18 #define EVENTMANAGER_HPP_ 
   29 #include "kaa/gen/EndpointGen.hpp" 
   46         : currentEventIndex_(0),eventTransport_(nullptr)
 
   54                             , 
const std::vector<std::uint8_t>& data
 
   55                             , 
const std::string& target
 
   83     struct EventListenersInfo {
 
   84         std::list<std::string> eventFQNs_;
 
   88     void onEventFromServer(
const std::string& eventClassFQN
 
   89                          , 
const std::vector<std::uint8_t>& data
 
   90                          , 
const std::string& source);
 
   92     void generateUniqueRequestId(std::string& requstId);
 
   94     std::set<IEventFamily*>   eventFamilies_;
 
   95     std::map<std::int32_t, Event>          pendingEvents_;
 
   96     KAA_MUTEX_MUTABLE_DECLARE(pendingEventsGuard_);
 
   98     std::int32_t currentEventIndex_;
 
  100     EventTransport *          eventTransport_;
 
  103     std::map<std::int32_t, std::shared_ptr<EventListenersInfo> > eventListenersRequests_;
 
  104     KAA_MUTEX_MUTABLE_DECLARE(eventListenersGuard_);
 
virtual void setTransport(EventTransport *transport)
 
virtual std::map< std::int32_t, std::list< std::string > > getPendingListenerRequests()
 
virtual bool hasPendingListenerRequests() const 
 
virtual void produceEvent(const std::string &fqn, const std::vector< std::uint8_t > &data, const std::string &target, TransactionIdPtr trxId)
 
std::shared_ptr< TransactionId > TransactionIdPtr
 
virtual void commit(TransactionIdPtr trxId)
 
std::shared_ptr< IKaaClientStateStorage > IKaaClientStateStoragePtr
 
virtual std::map< std::int32_t, Event > releasePendingEvents()
 
EventManager(IKaaClientStateStoragePtr status)
 
virtual void registerEventFamily(IEventFamily *eventFamily)
 
virtual void onEventsReceived(const EventSyncResponse::events_t &events)
 
virtual std::int32_t findEventListeners(const std::list< std::string > &eventFQNs, IFetchEventListenersPtr listener)
 
virtual TransactionIdPtr beginTransaction()
 
virtual void rollback(TransactionIdPtr trxId)
 
virtual TransactionIdPtr beginTransaction()
 
std::shared_ptr< IFetchEventListeners > IFetchEventListenersPtr
 
virtual bool hasPendingEvents() const 
 
virtual void rollback(TransactionIdPtr trxId)
 
virtual void onEventListenersReceived(const EventSyncResponse::eventListenersResponses_t &listeners)