safe_browsing_resource_throttle_factory.cc revision f8ee788a64d60abd8f2d742a5fdedde054ecd910
1 // Copyright (c) 2012 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/renderer_host/safe_browsing_resource_throttle_factory.h" 6 7#include "content/public/browser/resource_context.h" 8#if defined(FULL_SAFE_BROWSING) 9#include "chrome/browser/renderer_host/safe_browsing_resource_throttle.h" 10#endif 11 12using content::ResourceThrottle; 13 14// static 15SafeBrowsingResourceThrottleFactory* 16 SafeBrowsingResourceThrottleFactory::factory_ = NULL; 17 18// static 19ResourceThrottle* SafeBrowsingResourceThrottleFactory::Create( 20 net::URLRequest* request, 21 content::ResourceContext* resource_context, 22 bool is_subresource, 23 SafeBrowsingService* service) { 24 25#if defined(FULL_SAFE_BROWSING) 26 if (factory_) 27 return factory_->CreateResourceThrottle( 28 request, resource_context, is_subresource, service); 29 return new SafeBrowsingResourceThrottle(request, is_subresource, service); 30#elif defined(MOBILE_SAFE_BROWSING) 31 if (factory_) 32 return factory_->CreateResourceThrottle( 33 request, resource_context, is_subresource, service); 34 return NULL; 35#else 36#error Need to define {FULL|MOBILE} SAFE_BROWSING mode. 37#endif 38} 39