summaryrefslogtreecommitdiffstats
path: root/content/browser/download/download_buffer.h
diff options
context:
space:
mode:
Diffstat (limited to 'content/browser/download/download_buffer.h')
-rw-r--r--content/browser/download/download_buffer.h70
1 files changed, 0 insertions, 70 deletions
diff --git a/content/browser/download/download_buffer.h b/content/browser/download/download_buffer.h
deleted file mode 100644
index 35d4a56..0000000
--- a/content/browser/download/download_buffer.h
+++ /dev/null
@@ -1,70 +0,0 @@
-// 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.
-
-#ifndef CONTENT_BROWSER_DOWNLOAD_DOWNLOAD_BUFFER_H_
-#define CONTENT_BROWSER_DOWNLOAD_DOWNLOAD_BUFFER_H_
-#pragma once
-
-#include <vector>
-
-#include "base/memory/ref_counted.h"
-#include "base/synchronization/lock.h"
-#include "content/common/content_export.h"
-
-namespace net {
-class IOBuffer;
-}
-
-namespace content {
-
-typedef std::pair<scoped_refptr<net::IOBuffer>, size_t> ContentElement;
-typedef std::vector<ContentElement> ContentVector;
-
-// Helper function for ContentVector.
-// Assembles the data from |contents| and returns it in an |IOBuffer|.
-// The number of bytes in the |IOBuffer| is returned in |*num_bytes|
-// (if |num_bytes| is not NULL).
-// If |contents| is empty, returns NULL as an |IOBuffer| is not allowed
-// to have 0 bytes.
-CONTENT_EXPORT net::IOBuffer* AssembleData(const ContentVector& contents,
- size_t* num_bytes);
-
-// |DownloadBuffer| is a thread-safe wrapper around |ContentVector|.
-//
-// It is created and populated on the IO thread, and passed to the
-// FILE thread for writing. In order to avoid flooding the FILE thread with
-// too many small write messages, each write is appended to the
-// |DownloadBuffer| while waiting for the task to run on the FILE
-// thread. Access to the write buffers is synchronized via the lock.
-class CONTENT_EXPORT DownloadBuffer
- : public base::RefCountedThreadSafe<DownloadBuffer> {
- public:
- DownloadBuffer();
-
- // Adds data to the buffers.
- // Returns the number of |IOBuffer|s in the ContentVector.
- size_t AddData(net::IOBuffer* io_buffer, size_t byte_count);
-
- // Retrieves the ContentVector of buffers, clearing the contents.
- // The caller takes ownership.
- ContentVector* ReleaseContents();
-
- // Gets the number of |IOBuffers| we have.
- size_t size() const;
-
- private:
- friend class base::RefCountedThreadSafe<DownloadBuffer>;
-
- // Do not allow explicit destruction by anyone else.
- ~DownloadBuffer();
-
- mutable base::Lock lock_;
- ContentVector contents_;
-
- DISALLOW_COPY_AND_ASSIGN(DownloadBuffer);
-};
-
-} // namespace content
-
-#endif // CONTENT_BROWSER_DOWNLOAD_DOWNLOAD_BUFFER_H_