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

Side by Side Diff: ios/chrome/browser/ios_chrome_io_thread.h

Issue 2170103002: Notify SystemURLRequestContextGetter before shutdown on iOS. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Added test to gyp. Created 4 years, 4 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 #ifndef IOS_CHROME_BROWSER_IOS_CHROME_IO_THREAD_H_ 5 #ifndef IOS_CHROME_BROWSER_IOS_CHROME_IO_THREAD_H_
6 #define IOS_CHROME_BROWSER_IOS_CHROME_IO_THREAD_H_ 6 #define IOS_CHROME_BROWSER_IOS_CHROME_IO_THREAD_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 class URLRequestBackoffManager; 54 class URLRequestBackoffManager;
55 class URLRequestContext; 55 class URLRequestContext;
56 class URLRequestContextGetter; 56 class URLRequestContextGetter;
57 class URLRequestJobFactory; 57 class URLRequestJobFactory;
58 } // namespace net 58 } // namespace net
59 59
60 namespace net_log { 60 namespace net_log {
61 class ChromeNetLog; 61 class ChromeNetLog;
62 } // namespace net_log 62 } // namespace net_log
63 63
64 class SystemURLRequestContextGetter;
65
64 // Contains state associated with, initialized and cleaned up on, and 66 // Contains state associated with, initialized and cleaned up on, and
65 // primarily used on, the IO thread. 67 // primarily used on, the IO thread.
66 // 68 //
67 // If you are looking to interact with the IO thread (e.g. post tasks 69 // If you are looking to interact with the IO thread (e.g. post tasks
68 // to it or check if it is the current thread), see web::WebThread. 70 // to it or check if it is the current thread), see web::WebThread.
69 class IOSChromeIOThread : public web::WebThreadDelegate { 71 class IOSChromeIOThread : public web::WebThreadDelegate {
70 public: 72 public:
71 struct Globals { 73 struct Globals {
72 template <typename T> 74 template <typename T>
73 class Optional { 75 class Optional {
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
218 // platform and it gets SSL preferences from local_state object. 220 // platform and it gets SSL preferences from local_state object.
219 std::unique_ptr<ssl_config::SSLConfigServiceManager> 221 std::unique_ptr<ssl_config::SSLConfigServiceManager>
220 ssl_config_service_manager_; 222 ssl_config_service_manager_;
221 223
222 // These member variables are initialized by a task posted to the IO thread, 224 // These member variables are initialized by a task posted to the IO thread,
223 // which gets posted by calling certain member functions of IOSChromeIOThread. 225 // which gets posted by calling certain member functions of IOSChromeIOThread.
224 std::unique_ptr<net::ProxyConfigService> system_proxy_config_service_; 226 std::unique_ptr<net::ProxyConfigService> system_proxy_config_service_;
225 227
226 std::unique_ptr<PrefProxyConfigTracker> pref_proxy_config_tracker_; 228 std::unique_ptr<PrefProxyConfigTracker> pref_proxy_config_tracker_;
227 229
228 scoped_refptr<net::URLRequestContextGetter> 230 scoped_refptr<SystemURLRequestContextGetter>
229 system_url_request_context_getter_; 231 system_url_request_context_getter_;
230 232
231 const base::TimeTicks creation_time_; 233 const base::TimeTicks creation_time_;
232 234
233 base::WeakPtrFactory<IOSChromeIOThread> weak_factory_; 235 base::WeakPtrFactory<IOSChromeIOThread> weak_factory_;
234 236
235 DISALLOW_COPY_AND_ASSIGN(IOSChromeIOThread); 237 DISALLOW_COPY_AND_ASSIGN(IOSChromeIOThread);
236 }; 238 };
237 239
238 #endif // IOS_CHROME_BROWSER_IOS_CHROME_IO_THREAD_H_ 240 #endif // IOS_CHROME_BROWSER_IOS_CHROME_IO_THREAD_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698