History

TimeSeriesPlatformLibrary: Added user data property for publisher instance and performed some subscriber code cleanup

J. Ritchie Carroll committed 7 years ago

Commit 7344d5e1 parent 076441c8 files · +73 −33Browse files

Showing the changes to Source/Libraries/TimeSeriesPlatformLibrary/Samples/SubscriberHandler.cpp (1 of 8 files). Show all

Unified · Split

Source/Libraries/TimeSeriesPlatformLibrary/Samples/SubscriberHandler.cpp+29−8
@@ -31,12 +31,18 @@ · 30 unmodified lines
3131 using namespace std;
3232 using namespace GSF;
3333 using namespace GSF::TimeSeries;
34+using namespace GSF::TimeSeries::Transport;
3435
35−SubscriberHandler::SubscriberHandler(const string& name) :
36− m_name(name)
36+SubscriberHandler::SubscriberHandler(string name) :
37+ m_name(std::move(name))
3738 {
3839 }
3940
41+SubscriberHandler::~SubscriberHandler()
42+{
43+ cout << "Calling " << m_name << " destructor...";
44+}
45+
4046 SubscriptionInfo SubscriberHandler::CreateSubscriptionInfo()
4147 {
4248 SubscriptionInfo info = SubscriberInstance::CreateSubscriptionInfo();
@@ -63,6 +69,12 @@ SubscriptionInfo SubscriberHandler::CreateSubscriptionInfo() · 20 unmodified lines
6369 return info;
6470 }
6571
72+void SubscriberHandler::SetupSubscriberConnector(SubscriberConnector& connector)
73+{
74+ // TODO: Modify connector properties as desired...
75+ //connector.SetMaxRetries(-1);
76+}
77+
6678 void SubscriberHandler::StatusMessage(const string& message)
6779 {
6880 // TODO: Make sure these messages get logged to an appropriate location
@@ -71,7 +83,9 @@ void SubscriberHandler::StatusMessage(const string& message) · 2 unmodified lines
7183
7284 status << "[" << m_name << "] " << message;
7385
86+ m_coutLock.lock();
7487 SubscriberInstance::StatusMessage(status.str());
88+ m_coutLock.unlock();
7589 }
7690
7791 void SubscriberHandler::ErrorMessage(const string& message)
@@ -82,12 +96,19 @@ void SubscriberHandler::ErrorMessage(const string& message) · 4 unmodified lines
8296
8397 status << "[" << m_name << "] " << message;
8498
99+ m_coutLock.lock();
85100 SubscriberInstance::ErrorMessage(status.str());
101+ m_coutLock.unlock();
86102 }
87103
88104 void SubscriberHandler::DataStartTime(time_t unixSOC, uint16_t milliseconds)
89105 {
90− // TODO: This reports timestamp of very first received measurement (if useful)
106+ // TODO: This reports timestamp, time_t format, of very first received measurement (if useful)
107+}
108+
109+void SubscriberHandler::DataStartTime(DateTime startTime)
110+{
111+ // TODO: This reports timestamp, ptime format, of very first received measurement (if useful)
91112 }
92113
93114 void SubscriberHandler::ReceivedMetadata(const vector<uint8_t>& payload)
@@ -167,16 +188,16 @@ void SubscriberHandler::ReceivedNewMeasurements(const vector<MeasurementPtr>& me · 73 unmodified lines
167188 message << GetTotalMeasurementsReceived() << " measurements received so far..." << endl;
168189
169190 if (TicksToString(timestamp, MaxTimestampSize, TimestampFormat, measurements[0]->Timestamp))
170− message << string(timestamp);
191+ message << string(timestamp) << endl;
171192
172193 message << "Signal ID: " << boost::lexical_cast<string>(measurements[0]->SignalID) << endl;
173194
174− message << "Point\tValue" << endl;
195+ message << "\tPoint\tValue" << endl;
175196
176197 for (const auto& measurement : measurements)
177− message << '\t' << measurement->ID << '\t' << measurement->Value;
198+ message << '\t' << measurement->ID << '\t' << measurement->Value << endl;
178199
179− message << '\t' << GetTotalMeasurementsReceived() << endl;
200+ message << "Total measurements: " << GetTotalMeasurementsReceived() << endl;
180201
181202 StatusMessage(message.str());
182203 }
@@ -200,4 +221,4 @@ void SubscriberHandler::ConnectionEstablished() · 17 unmodified lines
200221 void SubscriberHandler::ConnectionTerminated()
201222 {
202223 StatusMessage("Connection terminated.");
203−}
224+}

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t