| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/chromeos/drive/fileapi/webkit_file_stream_reader_impl.h
" | 5 #include "chrome/browser/chromeos/drive/fileapi/webkit_file_stream_reader_impl.h
" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/bind_helpers.h" | 8 #include "base/bind_helpers.h" |
| 9 #include "base/callback.h" | 9 #include "base/callback.h" |
| 10 #include "base/logging.h" | 10 #include "base/logging.h" |
| 11 #include "chrome/browser/chromeos/drive/drive_file_stream_reader.h" | 11 #include "chrome/browser/chromeos/drive/drive_file_stream_reader.h" |
| 12 #include "components/drive/drive.pb.h" | 12 #include "components/drive/drive.pb.h" |
| 13 #include "content/public/browser/browser_thread.h" | 13 #include "content/public/browser/browser_thread.h" |
| 14 #include "net/base/io_buffer.h" | 14 #include "net/base/io_buffer.h" |
| 15 #include "net/base/net_errors.h" | 15 #include "net/base/net_errors.h" |
| 16 #include "net/http/http_byte_range.h" | 16 #include "net/http/http_byte_range.h" |
| 17 | 17 |
| 18 using content::BrowserThread; | 18 using content::BrowserThread; |
| 19 | 19 |
| 20 namespace drive { | 20 namespace drive { |
| 21 namespace internal { | 21 namespace internal { |
| 22 | 22 |
| 23 WebkitFileStreamReaderImpl::WebkitFileStreamReaderImpl( | 23 WebkitFileStreamReaderImpl::WebkitFileStreamReaderImpl( |
| 24 const DriveFileStreamReader::FileSystemGetter& file_system_getter, | 24 const DriveFileStreamReader::FileSystemGetter& file_system_getter, |
| 25 base::SequencedTaskRunner* file_task_runner, | 25 base::SequencedTaskRunner* file_task_runner, |
| 26 const base::FilePath& drive_file_path, | 26 const base::FilePath& drive_file_path, |
| 27 int64 offset, | 27 int64_t offset, |
| 28 const base::Time& expected_modification_time) | 28 const base::Time& expected_modification_time) |
| 29 : stream_reader_( | 29 : stream_reader_( |
| 30 new DriveFileStreamReader(file_system_getter, file_task_runner)), | 30 new DriveFileStreamReader(file_system_getter, file_task_runner)), |
| 31 drive_file_path_(drive_file_path), | 31 drive_file_path_(drive_file_path), |
| 32 offset_(offset), | 32 offset_(offset), |
| 33 expected_modification_time_(expected_modification_time), | 33 expected_modification_time_(expected_modification_time), |
| 34 file_size_(-1), | 34 file_size_(-1), |
| 35 weak_ptr_factory_(this) { | 35 weak_ptr_factory_(this) { |
| 36 DCHECK_GE(offset, 0); | 36 DCHECK_GE(offset, 0); |
| 37 } | 37 } |
| (...skipping 20 matching lines...) Expand all Loading... |
| 58 base::Bind(&WebkitFileStreamReaderImpl::OnStreamReaderInitialized, | 58 base::Bind(&WebkitFileStreamReaderImpl::OnStreamReaderInitialized, |
| 59 weak_ptr_factory_.GetWeakPtr(), | 59 weak_ptr_factory_.GetWeakPtr(), |
| 60 base::Bind(&WebkitFileStreamReaderImpl | 60 base::Bind(&WebkitFileStreamReaderImpl |
| 61 ::ReadAfterStreamReaderInitialized, | 61 ::ReadAfterStreamReaderInitialized, |
| 62 weak_ptr_factory_.GetWeakPtr(), | 62 weak_ptr_factory_.GetWeakPtr(), |
| 63 make_scoped_refptr(buffer), | 63 make_scoped_refptr(buffer), |
| 64 buffer_length, callback))); | 64 buffer_length, callback))); |
| 65 return net::ERR_IO_PENDING; | 65 return net::ERR_IO_PENDING; |
| 66 } | 66 } |
| 67 | 67 |
| 68 int64 WebkitFileStreamReaderImpl::GetLength( | 68 int64_t WebkitFileStreamReaderImpl::GetLength( |
| 69 const net::Int64CompletionCallback& callback) { | 69 const net::Int64CompletionCallback& callback) { |
| 70 DCHECK_CURRENTLY_ON(BrowserThread::IO); | 70 DCHECK_CURRENTLY_ON(BrowserThread::IO); |
| 71 DCHECK(stream_reader_); | 71 DCHECK(stream_reader_); |
| 72 DCHECK(!callback.is_null()); | 72 DCHECK(!callback.is_null()); |
| 73 | 73 |
| 74 if (stream_reader_->IsInitialized()) { | 74 if (stream_reader_->IsInitialized()) { |
| 75 // Returns file_size regardless of |offset_|. | 75 // Returns file_size regardless of |offset_|. |
| 76 return file_size_; | 76 return file_size_; |
| 77 } | 77 } |
| 78 | 78 |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 141 callback.Run(initialization_result); | 141 callback.Run(initialization_result); |
| 142 return; | 142 return; |
| 143 } | 143 } |
| 144 | 144 |
| 145 DCHECK_GE(file_size_, 0); | 145 DCHECK_GE(file_size_, 0); |
| 146 callback.Run(file_size_); | 146 callback.Run(file_size_); |
| 147 } | 147 } |
| 148 | 148 |
| 149 } // namespace internal | 149 } // namespace internal |
| 150 } // namespace drive | 150 } // namespace drive |
| OLD | NEW |