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 #ifndef NET_URL_REQUEST_DATA_PROTOCOL_HANDLER_H_ 6 #define NET_URL_REQUEST_DATA_PROTOCOL_HANDLER_H_ 7 8 #include "base/basictypes.h" 9 #include "base/compiler_specific.h" 10 #include "net/url_request/url_request_job_factory.h" 11 12 namespace net { 13 14 class URLRequestJob; 15 16 // Implements a ProtocolHandler for Data jobs. 17 class NET_EXPORT DataProtocolHandler 18 : public URLRequestJobFactory::ProtocolHandler { 19 public: 20 DataProtocolHandler(); 21 virtual URLRequestJob* MaybeCreateJob( 22 URLRequest* request, NetworkDelegate* network_delegate) const OVERRIDE; 23 virtual bool IsSafeRedirectTarget(const GURL& location) const OVERRIDE; 24 25 private: 26 DISALLOW_COPY_AND_ASSIGN(DataProtocolHandler); 27 }; 28 29 } // namespace net 30 31 #endif // NET_URL_REQUEST_DATA_PROTOCOL_HANDLER_H_ 32