1// Copyright (c) 2010 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 "chrome/browser/net/url_request_mock_link_doctor_job.h" 6 7#include "base/path_service.h" 8#include "chrome/browser/google/google_util.h" 9#include "chrome/common/chrome_paths.h" 10#include "googleurl/src/gurl.h" 11#include "net/url_request/url_request_filter.h" 12 13namespace { 14 15FilePath GetMockFilePath() { 16 FilePath test_dir; 17 bool success = PathService::Get(chrome::DIR_TEST_DATA, &test_dir); 18 DCHECK(success); 19 return test_dir.AppendASCII("mock-link-doctor.html"); 20} 21 22} // namespace 23 24// static 25net::URLRequestJob* URLRequestMockLinkDoctorJob::Factory( 26 net::URLRequest* request, 27 const std::string& scheme) { 28 return new URLRequestMockLinkDoctorJob(request); 29} 30 31// static 32void URLRequestMockLinkDoctorJob::AddUrlHandler() { 33 net::URLRequestFilter* filter = net::URLRequestFilter::GetInstance(); 34 filter->AddHostnameHandler("http", 35 GURL(google_util::kLinkDoctorBaseURL).host(), 36 URLRequestMockLinkDoctorJob::Factory); 37} 38 39URLRequestMockLinkDoctorJob::URLRequestMockLinkDoctorJob( 40 net::URLRequest* request) 41 : URLRequestMockHTTPJob(request, GetMockFilePath()) { 42} 43