Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(173)

Unified Diff: components/data_usage/core/data_use_aggregator.h

Issue 1390993005: Amortize data usage using TrafficStats on Android. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@data_use_buffering
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/data_usage/core/data_use_aggregator.h
diff --git a/components/data_usage/core/data_use_aggregator.h b/components/data_usage/core/data_use_aggregator.h
index bd5bab9fb01ca3b22af4d34efb59b043533259cb..fd785545a2ae8e97cd49b3974f54497b55682974 100644
--- a/components/data_usage/core/data_use_aggregator.h
+++ b/components/data_usage/core/data_use_aggregator.h
@@ -10,10 +10,12 @@
#include <vector>
#include "base/macros.h"
+#include "base/memory/scoped_ptr.h"
#include "base/memory/weak_ptr.h"
#include "base/observer_list.h"
#include "base/threading/thread_checker.h"
#include "components/data_usage/core/data_use.h"
+#include "components/data_usage/core/data_use_amortizer.h"
namespace net {
class URLRequest;
@@ -28,11 +30,10 @@ class DataUseAggregator {
class Observer {
public:
virtual ~Observer() {}
- // TODO(sclittle): Consider performing some pre-aggregation on the data use.
virtual void OnDataUse(const std::vector<DataUse>& data_use_sequence) = 0;
};
- DataUseAggregator();
+ explicit DataUseAggregator(scoped_ptr<DataUseAmortizer> data_use_amortizer);
virtual ~DataUseAggregator();
void AddObserver(Observer* observer);
@@ -57,6 +58,8 @@ class DataUseAggregator {
void FlushBufferedDataUse();
base::ThreadChecker thread_checker_;
+
+ scoped_ptr<DataUseAmortizer> data_use_amortizer_;
base::ObserverList<Observer> observer_list_;
// Buffer of unreported data use.

Powered by Google App Engine
This is Rietveld 408576698