// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "net/url_request/url_range_request_job.h" #include "net/base/net_errors.h" #include "net/http/http_request_headers.h" #include "net/http/http_util.h" namespace net { URLRangeRequestJob::URLRangeRequestJob(URLRequest* request, NetworkDelegate* delegate) : URLRequestJob(request, delegate), range_parse_result_(OK) { } URLRangeRequestJob::~URLRangeRequestJob() = default; void URLRangeRequestJob::SetExtraRequestHeaders( const HttpRequestHeaders& headers) { std::string range_header; if (headers.GetHeader(HttpRequestHeaders::kRange, &range_header)) { if (!HttpUtil::ParseRangeHeader(range_header, &ranges_)) { range_parse_result_ = ERR_REQUEST_RANGE_NOT_SATISFIABLE; } } } } // namespace net