summaryrefslogtreecommitdiffstats
path: root/content/common/net
diff options
context:
space:
mode:
authorkuan@chromium.org <kuan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-07 06:56:28 +0000
committerkuan@chromium.org <kuan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-07 06:56:28 +0000
commit78376afddb097107bcbea6b7fa8dc8bcc97c38db (patch)
tree192cdaf8ab8d3e76f9c9cdc70bfd545476449e6b /content/common/net
parent6d4154b7addac3548b34cf487800775682e0144f (diff)
downloadchromium_src-78376afddb097107bcbea6b7fa8dc8bcc97c38db.zip
chromium_src-78376afddb097107bcbea6b7fa8dc8bcc97c38db.tar.gz
chromium_src-78376afddb097107bcbea6b7fa8dc8bcc97c38db.tar.bz2
content::URLFetcher: Add HTTP PUT request type and method to append header string.
PUT request is needed for uploading files to gdata. BUG=chromium-os:25357 TEST=nothing yet. Review URL: http://codereview.chromium.org/9342007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120731 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/common/net')
-rw-r--r--content/common/net/url_fetcher_impl.cc7
-rw-r--r--content/common/net/url_fetcher_impl.h3
2 files changed, 8 insertions, 2 deletions
diff --git a/content/common/net/url_fetcher_impl.cc b/content/common/net/url_fetcher_impl.cc
index 0a6ffd2..160faff 100644
--- a/content/common/net/url_fetcher_impl.cc
+++ b/content/common/net/url_fetcher_impl.cc
@@ -798,10 +798,11 @@ void URLFetcherImpl::Core::StartURLRequest() {
break;
case POST:
+ case PUT:
DCHECK(!upload_content_.empty() || is_chunked_upload_);
DCHECK(!upload_content_type_.empty());
- request_->set_method("POST");
+ request_->set_method(request_type_ == POST ? "POST" : "PUT");
extra_request_headers_.SetHeader(net::HttpRequestHeaders::kContentType,
upload_content_type_);
if (!upload_content_.empty()) {
@@ -975,6 +976,10 @@ void URLFetcherImpl::SetExtraRequestHeaders(
core_->extra_request_headers_.AddHeadersFromString(extra_request_headers);
}
+void URLFetcherImpl::AddExtraRequestHeader(const std::string& header_line) {
+ core_->extra_request_headers_.AddHeaderFromString(header_line);
+}
+
void URLFetcherImpl::GetExtraRequestHeaders(net::HttpRequestHeaders* headers) {
headers->CopyFrom(core_->extra_request_headers_);
}
diff --git a/content/common/net/url_fetcher_impl.h b/content/common/net/url_fetcher_impl.h
index 767b310..1ba8b53 100644
--- a/content/common/net/url_fetcher_impl.h
+++ b/content/common/net/url_fetcher_impl.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Copyright (c) 2012 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.
@@ -46,6 +46,7 @@ class CONTENT_EXPORT URLFetcherImpl : public content::URLFetcher{
virtual void SetReferrer(const std::string& referrer) OVERRIDE;
virtual void SetExtraRequestHeaders(
const std::string& extra_request_headers) OVERRIDE;
+ virtual void AddExtraRequestHeader(const std::string& header_line) OVERRIDE;
virtual void GetExtraRequestHeaders(
net::HttpRequestHeaders* headers) OVERRIDE;
virtual void SetRequestContext(