summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions
diff options
context:
space:
mode:
authortommycli@chromium.org <tommycli@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-11-25 21:01:17 +0000
committertommycli@chromium.org <tommycli@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-11-25 21:01:17 +0000
commit49261dee53235586c1a0aa6343277c575d7d9358 (patch)
tree6967cfea9bb60a1d227d6ca74851e5b6599d141f /chrome/browser/extensions
parenteb4524fe5209b09e798054079c43198007aae8a9 (diff)
downloadchromium_src-49261dee53235586c1a0aa6343277c575d7d9358.zip
chromium_src-49261dee53235586c1a0aa6343277c575d7d9358.tar.gz
chromium_src-49261dee53235586c1a0aa6343277c575d7d9358.tar.bz2
Media Galleries API Metadata: Make BlobReader accessible to other extensions.
BUG=318450 Review URL: https://codereview.chromium.org/79933004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@237134 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions')
-rw-r--r--chrome/browser/extensions/api/feedback_private/feedback_service.h2
-rw-r--r--chrome/browser/extensions/blob_reader.cc (renamed from chrome/browser/extensions/api/feedback_private/blob_reader.cc)18
-rw-r--r--chrome/browser/extensions/blob_reader.h (renamed from chrome/browser/extensions/api/feedback_private/blob_reader.h)8
3 files changed, 23 insertions, 5 deletions
diff --git a/chrome/browser/extensions/api/feedback_private/feedback_service.h b/chrome/browser/extensions/api/feedback_private/feedback_service.h
index 49ff614..04acac4 100644
--- a/chrome/browser/extensions/api/feedback_private/feedback_service.h
+++ b/chrome/browser/extensions/api/feedback_private/feedback_service.h
@@ -10,7 +10,7 @@
#include "base/callback.h"
#include "base/memory/linked_ptr.h"
#include "base/memory/weak_ptr.h"
-#include "chrome/browser/extensions/api/feedback_private/blob_reader.h"
+#include "chrome/browser/extensions/blob_reader.h"
#include "chrome/browser/feedback/feedback_data.h"
#include "chrome/common/extensions/api/feedback_private.h"
diff --git a/chrome/browser/extensions/api/feedback_private/blob_reader.cc b/chrome/browser/extensions/blob_reader.cc
index 4ee07c9..0cfe187 100644
--- a/chrome/browser/extensions/api/feedback_private/blob_reader.cc
+++ b/chrome/browser/extensions/blob_reader.cc
@@ -2,11 +2,14 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "chrome/browser/extensions/api/feedback_private/blob_reader.h"
+#include "chrome/browser/extensions/blob_reader.h"
+#include "base/format_macros.h"
#include "base/strings/string_util.h"
+#include "base/strings/stringprintf.h"
#include "chrome/browser/profiles/profile.h"
#include "content/public/browser/browser_thread.h"
+#include "net/http/http_request_headers.h"
#include "net/url_request/url_fetcher.h"
#include "net/url_request/url_request_context.h"
#include "net/url_request/url_request_context_getter.h"
@@ -32,6 +35,19 @@ BlobReader::BlobReader(Profile* profile,
BlobReader::~BlobReader() {
}
+void BlobReader::SetByteRange(int64 offset, int64 length) {
+ CHECK_GE(offset, 0);
+ CHECK_GT(length, 0);
+ CHECK_LE(offset, kint64max - length);
+
+ net::HttpRequestHeaders headers;
+ headers.SetHeader(
+ net::HttpRequestHeaders::kRange,
+ base::StringPrintf("bytes=%" PRId64 "-%" PRId64, offset,
+ offset + length - 1));
+ fetcher_->SetExtraRequestHeaders(headers.ToString());
+}
+
void BlobReader::Start() {
fetcher_->Start();
}
diff --git a/chrome/browser/extensions/api/feedback_private/blob_reader.h b/chrome/browser/extensions/blob_reader.h
index 455d2c0..45d011d 100644
--- a/chrome/browser/extensions/api/feedback_private/blob_reader.h
+++ b/chrome/browser/extensions/blob_reader.h
@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CHROME_BROWSER_EXTENSIONS_API_FEEDBACK_PRIVATE_BLOB_READER_H_
-#define CHROME_BROWSER_EXTENSIONS_API_FEEDBACK_PRIVATE_BLOB_READER_H_
+#ifndef CHROME_BROWSER_EXTENSIONS_BLOB_READER_H_
+#define CHROME_BROWSER_EXTENSIONS_BLOB_READER_H_
#include <string>
@@ -29,6 +29,8 @@ class BlobReader : public net::URLFetcherDelegate {
BlobReadCallback callback);
virtual ~BlobReader();
+ void SetByteRange(int64 offset, int64 length);
+
void Start();
private:
@@ -41,4 +43,4 @@ class BlobReader : public net::URLFetcherDelegate {
DISALLOW_COPY_AND_ASSIGN(BlobReader);
};
-#endif // CHROME_BROWSER_EXTENSIONS_API_FEEDBACK_PRIVATE_BLOB_READER_H_
+#endif // CHROME_BROWSER_EXTENSIONS_BLOB_READER_H_