[System Monitor] change set handler api names
This CL changes some Observer*() names to Set*Handler(), which is more
representative of what's happening.
Test: dockyard_unittests.cc
Change-Id: I9518f0a14bc630ca321a4bf28f061680b2af77a2
diff --git a/lib/system_monitor/dockyard/README.md b/lib/system_monitor/dockyard/README.md
index 6f9e520..8654565 100644
--- a/lib/system_monitor/dockyard/README.md
+++ b/lib/system_monitor/dockyard/README.md
@@ -18,8 +18,8 @@
- Create a Dockyard instance.
- Add handlers for new stream names and stream sets:
- - dockyard.ObserveStreamNames(MyStreamNameHandler);
- - dockyard.ObserveStreamSets(MyStreamSetHandler);
+ - dockyard.SetStreamNamesHandler(MyStreamNameHandler);
+ - dockyard.SetStreamSetsHandler(MyStreamSetHandler);
- For testing, create some pseudo-random samples
- Create a RandomSampleGenerator
- Pass it and the dockyard to GenerateRandomSamples()
@@ -27,6 +27,7 @@
- Create a StreamSetsRequest
- Pass it to dockyard.GetStreamSets()
- Kick back and wait for MyStreamSetHandler to be called
+ - (for testing ProcessRequests() can be used to force it).
- When MyStreamSetHandler is called, loop over the data_sets to get the
sample values.
diff --git a/lib/system_monitor/dockyard/dockyard.cc b/lib/system_monitor/dockyard/dockyard.cc
index 3cd10c8..84f992e 100644
--- a/lib/system_monitor/dockyard/dockyard.cc
+++ b/lib/system_monitor/dockyard/dockyard.cc
@@ -86,13 +86,14 @@
return request->request_id;
}
-StreamNamesCallback Dockyard::ObserveStreamNames(StreamNamesCallback callback) {
+StreamNamesCallback Dockyard::SetStreamNamesHandler(
+ StreamNamesCallback callback) {
auto old_handler = _stream_name_handler;
_stream_name_handler = callback;
return old_handler;
}
-StreamSetsCallback Dockyard::ObserveStreamSets(StreamSetsCallback callback) {
+StreamSetsCallback Dockyard::SetStreamSetsHandler(StreamSetsCallback callback) {
auto old_handler = _stream_sets_handler;
_stream_sets_handler = callback;
return old_handler;
diff --git a/lib/system_monitor/dockyard/dockyard.h b/lib/system_monitor/dockyard/dockyard.h
index d98f8a3..ff24b9b 100644
--- a/lib/system_monitor/dockyard/dockyard.h
+++ b/lib/system_monitor/dockyard/dockyard.h
@@ -140,11 +140,13 @@
// equivalent map in sync). The racy nature of this update is not an issue
// because the rest of the API will cope with invalid stream IDs, so 'eventually
// consistent' is acceptable).
+// Use SetStreamNamesHandler() to install a StreamNamesCallback callback.
typedef std::function<void(const std::vector<StreamInfo>& add,
const std::vector<SampleStreamId>& remove)>
StreamNamesCallback;
// Called after (and in response to) a request is sent to |GetStreamSets()|.
+// Use SetStreamSetsHandler() to install a StreamSetsCallback callback.
typedef std::function<void(const StreamSetsResponse& response)>
StreamSetsCallback;
@@ -168,22 +170,27 @@
// samples for that time range, virtual samples will be generated based on
// available samples.
//
+ // The results will be supplied in a call to the |callback| previously set
+ // with SetStreamSetsHandler(). The |response| parameter on that callback will
+ // have the same context ID that is returned from this call to
+ // GetStreamSets() (i.e. that's how to match a response to a request).
+ //
// Returns unique context ID.
uint64_t GetStreamSets(StreamSetsRequest* request);
- // Listen for sample streams being added or removed. |callback| is called
- // when new streams are added or removed. Pass nullptr as |callback| to stop
- // listening.
+ // Sets the function called when sample streams are added or removed. Pass
+ // nullptr as |callback| to stop receiving calls.
//
// Returns prior callback or nullptr.
- StreamNamesCallback ObserveStreamNames(StreamNamesCallback callback);
+ StreamNamesCallback SetStreamNamesHandler(StreamNamesCallback callback);
- // Listen for sample streams being added or removed. |callback| is called
- // when new streams are added or removed. Pass nullptr as |callback| to stop
- // listening.
+ // Sets the function called when sample stream data arrives in response to a
+ // call to GetStreamSets(). So, first set a handler with
+ // SetStreamSetsHandler(), then make as many GetStreamSets() calls as
+ // desired. Pass nullptr as |callback| to stop receiving calls.
//
// Returns prior callback or nullptr.
- StreamSetsCallback ObserveStreamSets(StreamSetsCallback callback);
+ StreamSetsCallback SetStreamSetsHandler(StreamSetsCallback callback);
// Generate responses and call handlers for sample requests. Not intended for
// use by the GUI.
diff --git a/lib/system_monitor/dockyard/dockyard_unittests.cc b/lib/system_monitor/dockyard/dockyard_unittests.cc
index 4322673..12bca7e 100644
--- a/lib/system_monitor/dockyard/dockyard_unittests.cc
+++ b/lib/system_monitor/dockyard/dockyard_unittests.cc
@@ -17,10 +17,10 @@
_name_call_count = 100; // Arbitrary.
_sets_call_count = 200; // Arbitrary.
EXPECT_EQ(nullptr,
- _dockyard.ObserveStreamNames(std::bind(
+ _dockyard.SetStreamNamesHandler(std::bind(
&SystemMonitorDockyardTest::TestStreamNamesCallback, this,
std::placeholders::_1, std::placeholders::_2)));
- EXPECT_EQ(nullptr, _dockyard.ObserveStreamSets(std::bind(
+ EXPECT_EQ(nullptr, _dockyard.SetStreamSetsHandler(std::bind(
&SystemMonitorDockyardTest::TestStreamSetsCallback,
this, std::placeholders::_1)));
// Add some samples.