public:
DomainReliabilityUploaderImpl(const scoped_refptr<
net::URLRequestContextGetter>& url_request_context_getter)
- : url_request_context_getter_(url_request_context_getter) {}
+ : url_request_context_getter_(url_request_context_getter),
+ discard_uploads_(true) {}
virtual ~DomainReliabilityUploaderImpl() {
// Delete any in-flight URLFetchers.
VLOG(1) << "Uploading report to " << upload_url;
VLOG(2) << "Report JSON: " << report_json;
+ if (discard_uploads_) {
+ VLOG(1) << "Discarding report instead of uploading.";
+ callback.Run(true);
+ return;
+ }
+
net::URLFetcher* fetcher =
net::URLFetcher::Create(0, upload_url, net::URLFetcher::POST, this);
- fetcher->SetRequestContext(url_request_context_getter_);
+ fetcher->SetRequestContext(url_request_context_getter_.get());
fetcher->SetLoadFlags(net::LOAD_DO_NOT_SEND_COOKIES |
net::LOAD_DO_NOT_SAVE_COOKIES);
fetcher->SetUploadData(kJsonMimeType, report_json);
upload_callbacks_[fetcher] = callback;
}
+ virtual void set_discard_uploads(bool discard_uploads) OVERRIDE {
+ discard_uploads_ = discard_uploads;
+ VLOG(1) << "Setting discard_uploads to " << discard_uploads;
+ }
+
// net::URLFetcherDelegate implementation:
virtual void OnURLFetchComplete(
const net::URLFetcher* fetcher) OVERRIDE {
scoped_refptr<net::URLRequestContextGetter> url_request_context_getter_;
UploadCallbackMap upload_callbacks_;
+ bool discard_uploads_;
};
} // namespace