Refactor Network Tracing into separate data source
This splits the polling and DataSource aspects into separate classes
in preparation for making polling a singleton. This change is not
expected to change behavior.
Note:
* OnSetup saves the poll duration and passes it to Start to simplify
the Poller's life cycle.
* OnStart's handling of mTaskRunner/Loop is moved to the end of Start.
* OnStop's handling of mTaskRunner is moved to the end of Stop and Stop
is changed to continue on failure (so that the task runner is reset in
all cases as it was before this change).
Bug: 246985031
Test: atest libnetworkstats_test
Change-Id: I521eb50cd00916aa4d98174f0db461508b532732
3 files changed