Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / components / domain_reliability / service.cc
index 4d67573..13eca0d 100644 (file)
@@ -6,6 +6,7 @@
 
 #include "base/bind.h"
 #include "base/callback.h"
+#include "base/message_loop/message_loop_proxy.h"
 #include "base/single_thread_task_runner.h"
 #include "base/task_runner_util.h"
 #include "components/domain_reliability/monitor.h"
@@ -39,11 +40,17 @@ class DomainReliabilityServiceImpl : public DomainReliabilityService {
   // DomainReliabilityService implementation:
 
   virtual scoped_ptr<DomainReliabilityMonitor> CreateMonitor(
-      scoped_refptr<base::SequencedTaskRunner> network_task_runner) OVERRIDE {
-    DCHECK(!network_task_runner_);
+      scoped_refptr<base::SingleThreadTaskRunner> network_task_runner,
+      PrefService* local_state_pref_service,
+      const char* reporting_pref_name) OVERRIDE {
+    DCHECK(!network_task_runner_.get());
 
     scoped_ptr<DomainReliabilityMonitor> monitor(
-        new DomainReliabilityMonitor(upload_reporter_string_));
+        new DomainReliabilityMonitor(upload_reporter_string_,
+                                     base::MessageLoopProxy::current(),
+                                     network_task_runner,
+                                     local_state_pref_service,
+                                     reporting_pref_name));
 
     monitor_ = monitor->MakeWeakPtr();
     network_task_runner_ = network_task_runner;
@@ -53,7 +60,7 @@ class DomainReliabilityServiceImpl : public DomainReliabilityService {
 
   virtual void ClearBrowsingData(DomainReliabilityClearMode clear_mode,
                                  const base::Closure& callback) OVERRIDE {
-    DCHECK(network_task_runner_);
+    DCHECK(network_task_runner_.get());
 
     network_task_runner_->PostTaskAndReply(
         FROM_HERE,
@@ -66,10 +73,10 @@ class DomainReliabilityServiceImpl : public DomainReliabilityService {
   virtual void GetWebUIData(
       const base::Callback<void(scoped_ptr<base::Value>)>& callback)
       const OVERRIDE {
-    DCHECK(network_task_runner_);
+    DCHECK(network_task_runner_.get());
 
     PostTaskAndReplyWithResult(
-        network_task_runner_,
+        network_task_runner_.get(),
         FROM_HERE,
         base::Bind(&GetWebUIDataOnNetworkTaskRunner, monitor_),
         callback);
@@ -78,7 +85,7 @@ class DomainReliabilityServiceImpl : public DomainReliabilityService {
  private:
   std::string upload_reporter_string_;
   base::WeakPtr<DomainReliabilityMonitor> monitor_;
-  scoped_refptr<base::SequencedTaskRunner> network_task_runner_;
+  scoped_refptr<base::SingleThreadTaskRunner> network_task_runner_;
 };
 
 // static