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/file_system_provider/fileapi/backend_delegate.
h" | 5 #include "chrome/browser/chromeos/file_system_provider/fileapi/backend_delegate.
h" |
6 | 6 |
7 #include "base/memory/scoped_ptr.h" | 7 #include "base/memory/scoped_ptr.h" |
8 #include "chrome/browser/chromeos/file_system_provider/fileapi/buffering_file_st
ream_reader.h" | 8 #include "chrome/browser/chromeos/file_system_provider/fileapi/buffering_file_st
ream_reader.h" |
9 #include "chrome/browser/chromeos/file_system_provider/fileapi/buffering_file_st
ream_writer.h" | 9 #include "chrome/browser/chromeos/file_system_provider/fileapi/buffering_file_st
ream_writer.h" |
10 #include "chrome/browser/chromeos/file_system_provider/fileapi/file_stream_reade
r.h" | 10 #include "chrome/browser/chromeos/file_system_provider/fileapi/file_stream_reade
r.h" |
(...skipping 24 matching lines...) Expand all Loading... |
35 BackendDelegate::BackendDelegate() | 35 BackendDelegate::BackendDelegate() |
36 : async_file_util_(new internal::ProviderAsyncFileUtil), | 36 : async_file_util_(new internal::ProviderAsyncFileUtil), |
37 watcher_manager_(new WatcherManager) { | 37 watcher_manager_(new WatcherManager) { |
38 } | 38 } |
39 | 39 |
40 BackendDelegate::~BackendDelegate() {} | 40 BackendDelegate::~BackendDelegate() {} |
41 | 41 |
42 storage::AsyncFileUtil* BackendDelegate::GetAsyncFileUtil( | 42 storage::AsyncFileUtil* BackendDelegate::GetAsyncFileUtil( |
43 storage::FileSystemType type) { | 43 storage::FileSystemType type) { |
44 DCHECK_CURRENTLY_ON(BrowserThread::IO); | 44 DCHECK_CURRENTLY_ON(BrowserThread::IO); |
45 DCHECK_EQ(storage::kFileSystemTypeProvided, type); | 45 DCHECK(storage::kFileSystemTypeProvided == type || |
| 46 storage::kFileSystemTypePluginProvided == type); |
46 return async_file_util_.get(); | 47 return async_file_util_.get(); |
47 } | 48 } |
48 | 49 |
49 scoped_ptr<storage::FileStreamReader> BackendDelegate::CreateFileStreamReader( | 50 scoped_ptr<storage::FileStreamReader> BackendDelegate::CreateFileStreamReader( |
50 const storage::FileSystemURL& url, | 51 const storage::FileSystemURL& url, |
51 int64 offset, | 52 int64 offset, |
52 int64 max_bytes_to_read, | 53 int64 max_bytes_to_read, |
53 const base::Time& expected_modification_time, | 54 const base::Time& expected_modification_time, |
54 storage::FileSystemContext* context) { | 55 storage::FileSystemContext* context) { |
55 DCHECK_CURRENTLY_ON(BrowserThread::IO); | 56 DCHECK_CURRENTLY_ON(BrowserThread::IO); |
56 DCHECK_EQ(storage::kFileSystemTypeProvided, url.type()); | 57 DCHECK(storage::kFileSystemTypeProvided == url.type() || |
| 58 storage::kFileSystemTypePluginProvided == url.type()); |
57 | 59 |
58 return scoped_ptr<storage::FileStreamReader>(new BufferingFileStreamReader( | 60 return scoped_ptr<storage::FileStreamReader>(new BufferingFileStreamReader( |
59 scoped_ptr<storage::FileStreamReader>(new FileStreamReader( | 61 scoped_ptr<storage::FileStreamReader>(new FileStreamReader( |
60 context, url, offset, expected_modification_time)), | 62 context, url, offset, expected_modification_time)), |
61 kReaderBufferSize, | 63 kReaderBufferSize, |
62 max_bytes_to_read)); | 64 max_bytes_to_read)); |
63 } | 65 } |
64 | 66 |
65 scoped_ptr<storage::FileStreamWriter> BackendDelegate::CreateFileStreamWriter( | 67 scoped_ptr<storage::FileStreamWriter> BackendDelegate::CreateFileStreamWriter( |
66 const storage::FileSystemURL& url, | 68 const storage::FileSystemURL& url, |
67 int64 offset, | 69 int64 offset, |
68 storage::FileSystemContext* context) { | 70 storage::FileSystemContext* context) { |
69 DCHECK_CURRENTLY_ON(BrowserThread::IO); | 71 DCHECK_CURRENTLY_ON(BrowserThread::IO); |
70 DCHECK_EQ(storage::kFileSystemTypeProvided, url.type()); | 72 DCHECK(storage::kFileSystemTypeProvided == url.type() || |
| 73 storage::kFileSystemTypePluginProvided == url.type()); |
71 | 74 |
72 return scoped_ptr<storage::FileStreamWriter>(new BufferingFileStreamWriter( | 75 return scoped_ptr<storage::FileStreamWriter>(new BufferingFileStreamWriter( |
73 scoped_ptr<storage::FileStreamWriter>(new FileStreamWriter(url, offset)), | 76 scoped_ptr<storage::FileStreamWriter>(new FileStreamWriter(url, offset)), |
74 kWriterBufferSize)); | 77 kWriterBufferSize)); |
75 } | 78 } |
76 | 79 |
77 storage::WatcherManager* BackendDelegate::GetWatcherManager( | 80 storage::WatcherManager* BackendDelegate::GetWatcherManager( |
78 storage::FileSystemType type) { | 81 storage::FileSystemType type) { |
79 DCHECK_CURRENTLY_ON(BrowserThread::UI); | 82 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
80 DCHECK_EQ(storage::kFileSystemTypeProvided, type); | 83 DCHECK(storage::kFileSystemTypeProvided == type || |
| 84 storage::kFileSystemTypePluginProvided == type); |
81 return watcher_manager_.get(); | 85 return watcher_manager_.get(); |
82 } | 86 } |
83 | 87 |
84 void BackendDelegate::GetRedirectURLForContents( | 88 void BackendDelegate::GetRedirectURLForContents( |
85 const storage::FileSystemURL& url, | 89 const storage::FileSystemURL& url, |
86 const storage::URLCallback& callback) { | 90 const storage::URLCallback& callback) { |
87 DCHECK_CURRENTLY_ON(BrowserThread::IO); | 91 DCHECK_CURRENTLY_ON(BrowserThread::IO); |
88 DCHECK_EQ(storage::kFileSystemTypeProvided, url.type()); | 92 DCHECK(storage::kFileSystemTypeProvided == url.type() || |
| 93 storage::kFileSystemTypePluginProvided == url.type() ); |
89 callback.Run(GURL()); | 94 callback.Run(GURL()); |
90 } | 95 } |
91 | 96 |
92 } // namespace file_system_provider | 97 } // namespace file_system_provider |
93 } // namespace chromeos | 98 } // namespace chromeos |
OLD | NEW |