| Index: chrome/browser/chromeos/arc/fileapi/arc_content_file_system_file_stream_reader.h
|
| diff --git a/chrome/browser/chromeos/arc/fileapi/arc_content_file_system_file_stream_reader.h b/chrome/browser/chromeos/arc/fileapi/arc_content_file_system_file_stream_reader.h
|
| index 2d946744423eabf08ef1fe9e9c15a39029891ac4..2d49c1ece351fab7ed7261d9a7532502ac7da53b 100644
|
| --- a/chrome/browser/chromeos/arc/fileapi/arc_content_file_system_file_stream_reader.h
|
| +++ b/chrome/browser/chromeos/arc/fileapi/arc_content_file_system_file_stream_reader.h
|
| @@ -5,15 +5,25 @@
|
| #ifndef CHROME_BROWSER_CHROMEOS_ARC_FILEAPI_ARC_CONTENT_FILE_SYSTEM_FILE_STREAM_READER_H_
|
| #define CHROME_BROWSER_CHROMEOS_ARC_FILEAPI_ARC_CONTENT_FILE_SYSTEM_FILE_STREAM_READER_H_
|
|
|
| +#include <memory>
|
| +
|
| +#include "base/memory/weak_ptr.h"
|
| +#include "mojo/public/cpp/system/handle.h"
|
| +#include "net/base/completion_callback.h"
|
| #include "storage/browser/fileapi/file_stream_reader.h"
|
| +#include "url/gurl.h"
|
| +
|
| +namespace net {
|
| +class FileStream;
|
| +class IOBuffer;
|
| +}
|
|
|
| namespace arc {
|
|
|
| +// FileStreamReader implementation for ARC content file system.
|
| class ArcContentFileSystemFileStreamReader : public storage::FileStreamReader {
|
| public:
|
| - ArcContentFileSystemFileStreamReader(const storage::FileSystemURL& url,
|
| - int64_t offset,
|
| - int64_t max_bytes_to_read);
|
| + ArcContentFileSystemFileStreamReader(const GURL& arc_url, int64_t offset);
|
| ~ArcContentFileSystemFileStreamReader() override;
|
|
|
| // storage::FileStreamReader override:
|
| @@ -23,6 +33,18 @@ class ArcContentFileSystemFileStreamReader : public storage::FileStreamReader {
|
| int64_t GetLength(const net::Int64CompletionCallback& callback) override;
|
|
|
| private:
|
| + void OnOpenFile(scoped_refptr<net::IOBuffer> buf,
|
| + int buffer_length,
|
| + const net::CompletionCallback& callback,
|
| + mojo::ScopedHandle handle);
|
| +
|
| + GURL arc_url_;
|
| + int64_t offset_;
|
| +
|
| + std::unique_ptr<net::FileStream> file_stream_;
|
| +
|
| + base::WeakPtrFactory<ArcContentFileSystemFileStreamReader> weak_ptr_factory_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(ArcContentFileSystemFileStreamReader);
|
| };
|
|
|
|
|