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 "chrome/browser/prefetch/prefetch.h" 6 7 #include <string> 8 9 #include "base/metrics/field_trial.h" 10 #include "base/strings/string_util.h" 11 #include "chrome/browser/net/prediction_options.h" 12 #include "chrome/browser/prefetch/prefetch_field_trial.h" 13 #include "chrome/browser/profiles/profile_io_data.h" 14 #include "net/base/network_change_notifier.h" 15 16 namespace prefetch { 17 18 bool IsPrefetchEnabled(content::ResourceContext* resource_context) { 19 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::IO)); 20 21 ProfileIOData* io_data = ProfileIOData::FromResourceContext(resource_context); 22 return chrome_browser_net::CanPrefetchAndPrerenderIO(io_data) && 23 !DisableForFieldTrial(); 24 } 25 26 } // namespace prefetch 27