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

Side by Side Diff: ios/web/web_thread_adapter.cc

Issue 1406983008: [iOS] ios/web no longer depends on content::BrowserThread. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 5 years, 1 month 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
« no previous file with comments | « ios/web/web_thread_adapter.h ('k') | ios/web/web_thread_impl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "ios/web/web_thread_adapter.h"
6
7 #include "content/public/browser/browser_thread.h"
8
9 namespace web {
10
11 namespace {
12
13 WebThread::ID WebThreadIDFromBrowserThreadID(
14 content::BrowserThread::ID identifier) {
15 switch (identifier) {
16 case content::BrowserThread::UI:
17 return WebThread::UI;
18 case content::BrowserThread::DB:
19 return WebThread::DB;
20 case content::BrowserThread::FILE:
21 return WebThread::FILE;
22 case content::BrowserThread::FILE_USER_BLOCKING:
23 return WebThread::FILE_USER_BLOCKING;
24 case content::BrowserThread::CACHE:
25 return WebThread::CACHE;
26 case content::BrowserThread::IO:
27 return WebThread::IO;
28 default:
29 NOTREACHED() << "Unknown content::BrowserThread::ID: " << identifier;
30 return WebThread::UI;
31 }
32 }
33
34 } // namespace
35
36 content::BrowserThread::ID BrowserThreadIDFromWebThreadID(
37 WebThread::ID identifier) {
38 switch (identifier) {
39 case WebThread::UI:
40 return content::BrowserThread::UI;
41 case WebThread::DB:
42 return content::BrowserThread::DB;
43 case WebThread::FILE:
44 return content::BrowserThread::FILE;
45 case WebThread::FILE_USER_BLOCKING:
46 return content::BrowserThread::FILE_USER_BLOCKING;
47 case WebThread::CACHE:
48 return content::BrowserThread::CACHE;
49 case WebThread::IO:
50 return content::BrowserThread::IO;
51 default:
52 NOTREACHED() << "Unknown web::WebThread::ID: " << identifier;
53 return content::BrowserThread::UI;
54 }
55 }
56
57 #pragma mark - web_thread.h implementation
58
59 // static
60 bool WebThread::PostTask(ID identifier,
61 const tracked_objects::Location& from_here,
62 const base::Closure& task) {
63 return content::BrowserThread::PostTask(
64 BrowserThreadIDFromWebThreadID(identifier), from_here, task);
65 }
66
67 // static
68 bool WebThread::PostDelayedTask(ID identifier,
69 const tracked_objects::Location& from_here,
70 const base::Closure& task,
71 base::TimeDelta delay) {
72 return content::BrowserThread::PostDelayedTask(
73 BrowserThreadIDFromWebThreadID(identifier), from_here, task, delay);
74 }
75
76 // static
77 bool WebThread::PostNonNestableTask(ID identifier,
78 const tracked_objects::Location& from_here,
79 const base::Closure& task) {
80 return content::BrowserThread::PostNonNestableTask(
81 BrowserThreadIDFromWebThreadID(identifier), from_here, task);
82 }
83
84 // static
85 bool WebThread::PostNonNestableDelayedTask(
86 ID identifier,
87 const tracked_objects::Location& from_here,
88 const base::Closure& task,
89 base::TimeDelta delay) {
90 return content::BrowserThread::PostNonNestableDelayedTask(
91 BrowserThreadIDFromWebThreadID(identifier), from_here, task, delay);
92 }
93
94 // static
95 bool WebThread::PostTaskAndReply(ID identifier,
96 const tracked_objects::Location& from_here,
97 const base::Closure& task,
98 const base::Closure& reply) {
99 return content::BrowserThread::PostTaskAndReply(
100 BrowserThreadIDFromWebThreadID(identifier), from_here, task, reply);
101 }
102
103 // static
104 bool WebThread::PostBlockingPoolTask(const tracked_objects::Location& from_here,
105 const base::Closure& task) {
106 return content::BrowserThread::PostBlockingPoolTask(from_here, task);
107 }
108
109 // static
110 bool WebThread::PostBlockingPoolTaskAndReply(
111 const tracked_objects::Location& from_here,
112 const base::Closure& task,
113 const base::Closure& reply) {
114 return content::BrowserThread::PostBlockingPoolTaskAndReply(from_here, task,
115 reply);
116 }
117
118 // static
119 bool WebThread::PostBlockingPoolSequencedTask(
120 const std::string& sequence_token_name,
121 const tracked_objects::Location& from_here,
122 const base::Closure& task) {
123 return content::BrowserThread::PostBlockingPoolSequencedTask(
124 sequence_token_name, from_here, task);
125 }
126
127 // static
128 base::SequencedWorkerPool* WebThread::GetBlockingPool() {
129 return content::BrowserThread::GetBlockingPool();
130 }
131
132 // static
133 base::MessageLoop* WebThread::UnsafeGetMessageLoopForThread(ID identifier) {
134 return content::BrowserThread::UnsafeGetMessageLoopForThread(
135 BrowserThreadIDFromWebThreadID(identifier));
136 }
137
138 // static
139 bool WebThread::IsThreadInitialized(ID identifier) {
140 return content::BrowserThread::IsThreadInitialized(
141 BrowserThreadIDFromWebThreadID(identifier));
142 }
143
144 // static
145 bool WebThread::CurrentlyOn(ID identifier) {
146 return content::BrowserThread::CurrentlyOn(
147 BrowserThreadIDFromWebThreadID(identifier));
148 }
149
150 // static
151 bool WebThread::IsMessageLoopValid(ID identifier) {
152 return content::BrowserThread::IsMessageLoopValid(
153 BrowserThreadIDFromWebThreadID(identifier));
154 }
155
156 // static
157 bool WebThread::GetCurrentThreadIdentifier(ID* identifier) {
158 content::BrowserThread::ID content_identifier;
159 bool result =
160 content::BrowserThread::GetCurrentThreadIdentifier(&content_identifier);
161 if (result)
162 *identifier = WebThreadIDFromBrowserThreadID(content_identifier);
163 return result;
164 }
165
166 // static
167 scoped_refptr<base::SingleThreadTaskRunner> WebThread::GetTaskRunnerForThread(
168 ID identifier) {
169 return content::BrowserThread::GetMessageLoopProxyForThread(
170 BrowserThreadIDFromWebThreadID(identifier));
171 }
172
173 // static
174 std::string WebThread::GetDCheckCurrentlyOnErrorMessage(ID expected) {
175 return content::BrowserThread::GetDCheckCurrentlyOnErrorMessage(
176 BrowserThreadIDFromWebThreadID(expected));
177 }
178
179 } // namespace web
OLDNEW
« no previous file with comments | « ios/web/web_thread_adapter.h ('k') | ios/web/web_thread_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698