// Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE-CHROMIUM file. #ifndef __brightray__url_request_context_getter__ #define __brightray__url_request_context_getter__ #include "base/files/file_path.h" #include "base/memory/scoped_ptr.h" #include "content/public/browser/content_browser_client.h" #include "net/url_request/url_request_context_getter.h" class MessageLoop; namespace net { class HostResolver; class NetworkDelegate; class ProxyConfigService; class URLRequestContextStorage; } namespace brightray { class URLRequestContextGetter : public net::URLRequestContextGetter { public: URLRequestContextGetter( const base::FilePath& base_path, MessageLoop* io_loop, MessageLoop* file_loop, content::ProtocolHandlerMap*); virtual ~URLRequestContextGetter(); net::HostResolver* host_resolver(); virtual net::URLRequestContext* GetURLRequestContext() OVERRIDE; private: virtual scoped_refptr GetNetworkTaskRunner() const OVERRIDE; base::FilePath base_path_; MessageLoop* io_loop_; MessageLoop* file_loop_; scoped_ptr proxy_config_service_; scoped_ptr network_delegate_; scoped_ptr storage_; scoped_ptr url_request_context_; content::ProtocolHandlerMap protocol_handlers_; DISALLOW_COPY_AND_ASSIGN(URLRequestContextGetter); }; } #endif /* defined(__brightray__url_request_context_getter__) */