1 // Copyright 2013 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.
5 #include "cloud_print/gcp20/prototype/cloud_print_url_request_context_getter.h"
7 #include "net/proxy/proxy_config_service_fixed.h"
8 #include "net/url_request/url_request_context.h"
9 #include "net/url_request/url_request_context_builder.h"
11 CloudPrintURLRequestContextGetter::CloudPrintURLRequestContextGetter(
12 scoped_refptr<base::SingleThreadTaskRunner> task_runner) {
13 DCHECK(task_runner.get());
14 network_task_runner_ = task_runner;
17 CloudPrintURLRequestContextGetter::~CloudPrintURLRequestContextGetter() {
20 net::URLRequestContext*
21 CloudPrintURLRequestContextGetter::GetURLRequestContext() {
23 net::URLRequestContextBuilder builder;
24 #if defined(OS_LINUX) || defined(OS_ANDROID)
25 builder.set_proxy_config_service(
26 new net::ProxyConfigServiceFixed(net::ProxyConfig()));
27 #endif // defined(OS_LINUX) || defined(OS_ANDROID)
28 context_.reset(builder.Build());
30 return context_.get();
33 scoped_refptr<base::SingleThreadTaskRunner>
34 CloudPrintURLRequestContextGetter::GetNetworkTaskRunner() const {
35 return network_task_runner_;