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

Side by Side Diff: components/domain_reliability/service.cc

Issue 357103002: Domain Reliability: Add rudimentary WebUI page. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix compiler errors (cast size_t to int in WebUI code) Created 6 years, 5 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « components/domain_reliability/service.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "components/domain_reliability/service.h" 5 #include "components/domain_reliability/service.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/callback.h" 8 #include "base/callback.h"
9 #include "base/single_thread_task_runner.h" 9 #include "base/single_thread_task_runner.h"
10 #include "base/task_runner_util.h"
10 #include "components/domain_reliability/monitor.h" 11 #include "components/domain_reliability/monitor.h"
11 #include "net/url_request/url_request_context_getter.h" 12 #include "net/url_request/url_request_context_getter.h"
12 13
13 namespace domain_reliability { 14 namespace domain_reliability {
14 15
16 namespace {
17
18 scoped_ptr<base::Value> GetWebUIDataOnNetworkTaskRunner(
19 base::WeakPtr<DomainReliabilityMonitor> monitor) {
20 if (!monitor) {
21 base::DictionaryValue* dict = new base::DictionaryValue();
22 dict->SetString("error", "no_monitor");
23 return scoped_ptr<base::Value>(dict);
24 }
25
26 return monitor->GetWebUIData();
27 }
28
29 } // namespace
30
15 class DomainReliabilityServiceImpl : public DomainReliabilityService { 31 class DomainReliabilityServiceImpl : public DomainReliabilityService {
16 public: 32 public:
17 explicit DomainReliabilityServiceImpl( 33 explicit DomainReliabilityServiceImpl(
18 const std::string& upload_reporter_string) 34 const std::string& upload_reporter_string)
19 : upload_reporter_string_(upload_reporter_string) {} 35 : upload_reporter_string_(upload_reporter_string) {}
20 36
21 virtual ~DomainReliabilityServiceImpl() {} 37 virtual ~DomainReliabilityServiceImpl() {}
22 38
23 // DomainReliabilityService implementation: 39 // DomainReliabilityService implementation:
24 40
(...skipping 15 matching lines...) Expand all
40 DCHECK(network_task_runner_); 56 DCHECK(network_task_runner_);
41 57
42 network_task_runner_->PostTaskAndReply( 58 network_task_runner_->PostTaskAndReply(
43 FROM_HERE, 59 FROM_HERE,
44 base::Bind(&DomainReliabilityMonitor::ClearBrowsingData, 60 base::Bind(&DomainReliabilityMonitor::ClearBrowsingData,
45 monitor_, 61 monitor_,
46 clear_mode), 62 clear_mode),
47 callback); 63 callback);
48 } 64 }
49 65
66 virtual void GetWebUIData(
67 const base::Callback<void(scoped_ptr<base::Value>)>& callback)
68 const OVERRIDE {
69 DCHECK(network_task_runner_);
70
71 PostTaskAndReplyWithResult(
72 network_task_runner_,
73 FROM_HERE,
74 base::Bind(&GetWebUIDataOnNetworkTaskRunner, monitor_),
75 callback);
76 }
77
50 private: 78 private:
51 std::string upload_reporter_string_; 79 std::string upload_reporter_string_;
52 base::WeakPtr<DomainReliabilityMonitor> monitor_; 80 base::WeakPtr<DomainReliabilityMonitor> monitor_;
53 scoped_refptr<base::SequencedTaskRunner> network_task_runner_; 81 scoped_refptr<base::SequencedTaskRunner> network_task_runner_;
54 }; 82 };
55 83
56 // static 84 // static
57 DomainReliabilityService* DomainReliabilityService::Create( 85 DomainReliabilityService* DomainReliabilityService::Create(
58 const std::string& upload_reporter_string) { 86 const std::string& upload_reporter_string) {
59 return new DomainReliabilityServiceImpl(upload_reporter_string); 87 return new DomainReliabilityServiceImpl(upload_reporter_string);
60 } 88 }
61 89
62 DomainReliabilityService::~DomainReliabilityService() {} 90 DomainReliabilityService::~DomainReliabilityService() {}
63 91
64 DomainReliabilityService::DomainReliabilityService() {} 92 DomainReliabilityService::DomainReliabilityService() {}
65 93
66 } // namespace domain_reliability 94 } // namespace domain_reliability
OLDNEW
« no previous file with comments | « components/domain_reliability/service.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698