| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "components/domain_reliability/uploader.h" | 5 #include "components/domain_reliability/uploader.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/memory/scoped_vector.h" | 8 #include "base/memory/scoped_vector.h" |
| 9 #include "base/metrics/sparse_histogram.h" | 9 #include "base/metrics/sparse_histogram.h" |
| 10 #include "base/stl_util.h" | 10 #include "base/stl_util.h" |
| (...skipping 20 matching lines...) Expand all Loading... |
| 31 return new UploadUserData(); | 31 return new UploadUserData(); |
| 32 } | 32 } |
| 33 }; | 33 }; |
| 34 | 34 |
| 35 const void* UploadUserData::kUserDataKey = | 35 const void* UploadUserData::kUserDataKey = |
| 36 static_cast<const void*>(&UploadUserData::kUserDataKey); | 36 static_cast<const void*>(&UploadUserData::kUserDataKey); |
| 37 | 37 |
| 38 class DomainReliabilityUploaderImpl | 38 class DomainReliabilityUploaderImpl |
| 39 : public DomainReliabilityUploader, net::URLFetcherDelegate { | 39 : public DomainReliabilityUploader, net::URLFetcherDelegate { |
| 40 public: | 40 public: |
| 41 DomainReliabilityUploaderImpl( | 41 DomainReliabilityUploaderImpl(const scoped_refptr< |
| 42 scoped_refptr<net::URLRequestContextGetter> url_request_context_getter) | 42 net::URLRequestContextGetter>& url_request_context_getter) |
| 43 : url_request_context_getter_(url_request_context_getter) {} | 43 : url_request_context_getter_(url_request_context_getter) {} |
| 44 | 44 |
| 45 virtual ~DomainReliabilityUploaderImpl() { | 45 virtual ~DomainReliabilityUploaderImpl() { |
| 46 // Delete any in-flight URLFetchers. | 46 // Delete any in-flight URLFetchers. |
| 47 STLDeleteContainerPairFirstPointers( | 47 STLDeleteContainerPairFirstPointers( |
| 48 upload_callbacks_.begin(), upload_callbacks_.end()); | 48 upload_callbacks_.begin(), upload_callbacks_.end()); |
| 49 } | 49 } |
| 50 | 50 |
| 51 // DomainReliabilityUploader implementation: | 51 // DomainReliabilityUploader implementation: |
| 52 virtual void UploadReport( | 52 virtual void UploadReport( |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 95 using DomainReliabilityUploader::UploadCallback; | 95 using DomainReliabilityUploader::UploadCallback; |
| 96 typedef std::map<const net::URLFetcher*, UploadCallback> UploadCallbackMap; | 96 typedef std::map<const net::URLFetcher*, UploadCallback> UploadCallbackMap; |
| 97 | 97 |
| 98 scoped_refptr<net::URLRequestContextGetter> url_request_context_getter_; | 98 scoped_refptr<net::URLRequestContextGetter> url_request_context_getter_; |
| 99 UploadCallbackMap upload_callbacks_; | 99 UploadCallbackMap upload_callbacks_; |
| 100 }; | 100 }; |
| 101 | 101 |
| 102 } // namespace | 102 } // namespace |
| 103 | 103 |
| 104 DomainReliabilityUploader::DomainReliabilityUploader() {} | 104 DomainReliabilityUploader::DomainReliabilityUploader() {} |
| 105 | |
| 106 DomainReliabilityUploader::~DomainReliabilityUploader() {} | 105 DomainReliabilityUploader::~DomainReliabilityUploader() {} |
| 107 | 106 |
| 108 // static | 107 // static |
| 109 scoped_ptr<DomainReliabilityUploader> DomainReliabilityUploader::Create( | 108 scoped_ptr<DomainReliabilityUploader> DomainReliabilityUploader::Create( |
| 110 scoped_refptr<net::URLRequestContextGetter> url_request_context_getter) { | 109 const scoped_refptr<net::URLRequestContextGetter>& |
| 110 url_request_context_getter) { |
| 111 return scoped_ptr<DomainReliabilityUploader>( | 111 return scoped_ptr<DomainReliabilityUploader>( |
| 112 new DomainReliabilityUploaderImpl(url_request_context_getter)); | 112 new DomainReliabilityUploaderImpl(url_request_context_getter)); |
| 113 } | 113 } |
| 114 | 114 |
| 115 // static | 115 // static |
| 116 bool DomainReliabilityUploader::URLRequestIsUpload( | 116 bool DomainReliabilityUploader::URLRequestIsUpload( |
| 117 const net::URLRequest& request) { | 117 const net::URLRequest& request) { |
| 118 return request.GetUserData(UploadUserData::kUserDataKey) != NULL; | 118 return request.GetUserData(UploadUserData::kUserDataKey) != NULL; |
| 119 } | 119 } |
| 120 | 120 |
| 121 } // namespace domain_reliability | 121 } // namespace domain_reliability |
| OLD | NEW |