Go to the documentation of this file.
18 #ifndef DDTDATASUBSCRIBER_HPP_
19 #define DDTDATASUBSCRIBER_HPP_
21 #include <boost/bind.hpp>
22 #include <boost/uuid/uuid.hpp>
23 #include <boost/uuid/uuid_generators.hpp>
24 #include <boost/uuid/uuid_io.hpp>
53 const std::string remote_uri,
54 const int32_t interval = 10)
override;
79 boost::signals2::connection
connect(
80 const signal_t::slot_type &event_listener);
107 void PrintConfigValues();
117 void InitializeNotificationSubscriber(
118 const std::string data_stream_identifier,
119 const int32_t notification_port);
139 void NotificationEvent(
140 const mal::ps::DataEvent<datatransfer::NotificationSample> &event);
145 int CheckPublisher();
150 int CreateAccessor();
157 void LogSubscriberParameter();
159 void PrintErrorMessage(
const int result);
164 std::string data_stream_identifier;
165 std::string subscriber_uuid;
166 std::string broker_uri;
167 std::string remote_broker_uri;
168 int32_t reading_interval;
169 std::atomic<bool> event_active;
171 std::unique_ptr<mal::ps::Subscriber<datatransfer::NotificationSample>,
173 mal::ps::Subscriber<datatransfer::NotificationSample> > >
174 notification_subscriber;
175 std::shared_ptr<datatransfer::NotificationSample> ddt_key_notification;
176 std::shared_ptr<datatransfer::NotificationSample> ddt_notification;
177 mal::ps::DataEventFilter<datatransfer::NotificationSample> filter;
179 std::promise<void> exit_signal;
180 std::future<void> future_object;
182 const int32_t NUM_RETRIES = 10;
183 const int32_t MAX_AGE_DATA_SAMPLE_MIN = 2000;
Definition: ddtStatistics.hpp:24
~DdtDataSubscriber() override
Definition: ddtDataSubscriber.cpp:38
DdtDataSubscriber(DdtLogger *logger)
Definition: ddtDataSubscriber.cpp:22
int UnregisterSubscriber() override
Definition: ddtDataSubscriber.cpp:361
Definition: ddtLogger.hpp:48
Definition: ddtMemoryAccessor.hpp:257
Definition: ddtClient.hpp:36
int32_t max_age_data_sample
Definition: ddtDataSubscriber.hpp:93
void StartNotificationSubscription()
Definition: ddtDataSubscriber.cpp:480
const int32_t MAX_AGE_DATA_SAMPLE_DEFAULT
Definition: ddtDataSubscriber.hpp:96
int RegisterSubscriber(const std::string uri, const std::string dsi, const std::string remote_uri, const int32_t interval=10) override
Definition: ddtDataSubscriber.cpp:141
Definition: ddtMemoryAccessor.hpp:173
void LoadDefaults()
Definition: ddtDataSubscriber.cpp:53
DataSample * ReadData() override
Definition: ddtDataSubscriber.cpp:419
DdtStatistics get_statistics()
Definition: ddtDataSubscriber.cpp:399
void StopNotificationSubscription()
Definition: ddtDataSubscriber.cpp:490
boost::signals2::connection connect(const signal_t::slot_type &event_listener)
Definition: ddtDataSubscriber.cpp:356
DdtLogger * logger
Definition: ddtDataTransferLib.hpp:182
Definition: ddtStatisticsClient.hpp:32
Definition: ddtDataTransferLib.hpp:39
Definition: ddtDataSubscriber.hpp:35
void ReadIni()
Definition: ddtDataSubscriber.cpp:59