| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #ifndef CHROME_BROWSER_MEDIA_GALLERIES_LINUX_MTP_DEVICE_DELEGATE_IMPL_LINUX_H_ | 5 #ifndef CHROME_BROWSER_MEDIA_GALLERIES_LINUX_MTP_DEVICE_DELEGATE_IMPL_LINUX_H_ |
| 6 #define CHROME_BROWSER_MEDIA_GALLERIES_LINUX_MTP_DEVICE_DELEGATE_IMPL_LINUX_H_ | 6 #define CHROME_BROWSER_MEDIA_GALLERIES_LINUX_MTP_DEVICE_DELEGATE_IMPL_LINUX_H_ |
| 7 | 7 |
| 8 #include <deque> | 8 #include <deque> |
| 9 #include <map> | 9 #include <map> |
| 10 #include <set> | 10 #include <set> |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 83 const base::FilePath& local_path, | 83 const base::FilePath& local_path, |
| 84 const CreateSnapshotFileSuccessCallback& success_callback, | 84 const CreateSnapshotFileSuccessCallback& success_callback, |
| 85 const ErrorCallback& error_callback) override; | 85 const ErrorCallback& error_callback) override; |
| 86 bool IsStreaming() override; | 86 bool IsStreaming() override; |
| 87 void ReadBytes(const base::FilePath& device_file_path, | 87 void ReadBytes(const base::FilePath& device_file_path, |
| 88 const scoped_refptr<net::IOBuffer>& buf, | 88 const scoped_refptr<net::IOBuffer>& buf, |
| 89 int64 offset, | 89 int64 offset, |
| 90 int buf_len, | 90 int buf_len, |
| 91 const ReadBytesSuccessCallback& success_callback, | 91 const ReadBytesSuccessCallback& success_callback, |
| 92 const ErrorCallback& error_callback) override; | 92 const ErrorCallback& error_callback) override; |
| 93 void CopyFileFromLocal( |
| 94 const base::FilePath& source_file_path, |
| 95 const base::FilePath& device_file_path, |
| 96 const CopyFileFromLocalSuccessCallback& success_callback, |
| 97 const ErrorCallback& error_callback) override; |
| 93 void CancelPendingTasksAndDeleteDelegate() override; | 98 void CancelPendingTasksAndDeleteDelegate() override; |
| 94 | 99 |
| 95 // The internal methods correspond to the similarly named methods above. | 100 // The internal methods correspond to the similarly named methods above. |
| 96 // The |root_node_| cache should be filled at this point. | 101 // The |root_node_| cache should be filled at this point. |
| 97 virtual void GetFileInfoInternal( | 102 virtual void GetFileInfoInternal( |
| 98 const base::FilePath& file_path, | 103 const base::FilePath& file_path, |
| 99 const GetFileInfoSuccessCallback& success_callback, | 104 const GetFileInfoSuccessCallback& success_callback, |
| 100 const ErrorCallback& error_callback); | 105 const ErrorCallback& error_callback); |
| 101 virtual void ReadDirectoryInternal( | 106 virtual void ReadDirectoryInternal( |
| 102 const base::FilePath& root, | 107 const base::FilePath& root, |
| 103 const ReadDirectorySuccessCallback& success_callback, | 108 const ReadDirectorySuccessCallback& success_callback, |
| 104 const ErrorCallback& error_callback); | 109 const ErrorCallback& error_callback); |
| 105 virtual void CreateSnapshotFileInternal( | 110 virtual void CreateSnapshotFileInternal( |
| 106 const base::FilePath& device_file_path, | 111 const base::FilePath& device_file_path, |
| 107 const base::FilePath& local_path, | 112 const base::FilePath& local_path, |
| 108 const CreateSnapshotFileSuccessCallback& success_callback, | 113 const CreateSnapshotFileSuccessCallback& success_callback, |
| 109 const ErrorCallback& error_callback); | 114 const ErrorCallback& error_callback); |
| 110 virtual void ReadBytesInternal( | 115 virtual void ReadBytesInternal( |
| 111 const base::FilePath& device_file_path, | 116 const base::FilePath& device_file_path, |
| 112 net::IOBuffer* buf, int64 offset, int buf_len, | 117 net::IOBuffer* buf, int64 offset, int buf_len, |
| 113 const ReadBytesSuccessCallback& success_callback, | 118 const ReadBytesSuccessCallback& success_callback, |
| 114 const ErrorCallback& error_callback); | 119 const ErrorCallback& error_callback); |
| 120 virtual void CopyFileFromLocalInternal( |
| 121 const base::FilePath& source_file_path, |
| 122 const base::FilePath& device_file_path, |
| 123 const CopyFileFromLocalSuccessCallback& success_callback, |
| 124 const ErrorCallback& error_callback); |
| 115 | 125 |
| 116 // Ensures the device is initialized for communication. | 126 // Ensures the device is initialized for communication. |
| 117 // If the device is already initialized, call RunTask(). | 127 // If the device is already initialized, call RunTask(). |
| 118 // | 128 // |
| 119 // If the device is uninitialized, store the |task_info| in a pending task | 129 // If the device is uninitialized, store the |task_info| in a pending task |
| 120 // queue and runs the pending tasks in the queue once the device is | 130 // queue and runs the pending tasks in the queue once the device is |
| 121 // successfully initialized. | 131 // successfully initialized. |
| 122 void EnsureInitAndRunTask(const PendingTaskInfo& task_info); | 132 void EnsureInitAndRunTask(const PendingTaskInfo& task_info); |
| 123 | 133 |
| 124 // Runs a task. If |task_info.path| is empty, or if the path is cached, runs | 134 // Runs a task. If |task_info.path| is empty, or if the path is cached, runs |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 215 const base::File::Info& file_info, int bytes_read); | 225 const base::File::Info& file_info, int bytes_read); |
| 216 | 226 |
| 217 // Called when FillFileCache() succeeds. | 227 // Called when FillFileCache() succeeds. |
| 218 void OnDidFillFileCache(const base::FilePath& path, | 228 void OnDidFillFileCache(const base::FilePath& path, |
| 219 const storage::AsyncFileUtil::EntryList& file_list, | 229 const storage::AsyncFileUtil::EntryList& file_list, |
| 220 bool has_more); | 230 bool has_more); |
| 221 | 231 |
| 222 // Called when FillFileCache() fails. | 232 // Called when FillFileCache() fails. |
| 223 void OnFillFileCacheFailed(base::File::Error error); | 233 void OnFillFileCacheFailed(base::File::Error error); |
| 224 | 234 |
| 235 // Called when CopyFileFromLocal() succeeds. |
| 236 void OnDidCopyFileFromLocal( |
| 237 const CopyFileFromLocalSuccessCallback& success_callback, |
| 238 const uint32 source_file_descriptor); |
| 239 |
| 240 // Called when CopyFileFromLocal() fails. |
| 241 void HandleCopyFileFromLocalError(const ErrorCallback& error_callback, |
| 242 const uint32 source_file_descriptor, |
| 243 base::File::Error error); |
| 244 |
| 225 // Handles the device file |error| while operating on |file_id|. | 245 // Handles the device file |error| while operating on |file_id|. |
| 226 // |error_callback| is invoked to notify the caller about the file error. | 246 // |error_callback| is invoked to notify the caller about the file error. |
| 227 void HandleDeviceFileError(const ErrorCallback& error_callback, | 247 void HandleDeviceFileError(const ErrorCallback& error_callback, |
| 228 uint32 file_id, | 248 uint32 file_id, |
| 229 base::File::Error error); | 249 base::File::Error error); |
| 230 | 250 |
| 231 // Given a full path, returns a non-empty sub-path that needs to be read into | 251 // Given a full path, returns a non-empty sub-path that needs to be read into |
| 232 // the cache if such a uncached path exists. | 252 // the cache if such a uncached path exists. |
| 233 // |cached_path| is the portion of |path| that has had cache lookup attempts. | 253 // |cached_path| is the portion of |path| that has had cache lookup attempts. |
| 234 base::FilePath NextUncachedPathComponent( | 254 base::FilePath NextUncachedPathComponent( |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 286 // the ReadDirectory operation. | 306 // the ReadDirectory operation. |
| 287 FileInfoCache file_info_cache_; | 307 FileInfoCache file_info_cache_; |
| 288 | 308 |
| 289 // For callbacks that may run after destruction. | 309 // For callbacks that may run after destruction. |
| 290 base::WeakPtrFactory<MTPDeviceDelegateImplLinux> weak_ptr_factory_; | 310 base::WeakPtrFactory<MTPDeviceDelegateImplLinux> weak_ptr_factory_; |
| 291 | 311 |
| 292 DISALLOW_COPY_AND_ASSIGN(MTPDeviceDelegateImplLinux); | 312 DISALLOW_COPY_AND_ASSIGN(MTPDeviceDelegateImplLinux); |
| 293 }; | 313 }; |
| 294 | 314 |
| 295 #endif // CHROME_BROWSER_MEDIA_GALLERIES_LINUX_MTP_DEVICE_DELEGATE_IMPL_LINUX_H
_ | 315 #endif // CHROME_BROWSER_MEDIA_GALLERIES_LINUX_MTP_DEVICE_DELEGATE_IMPL_LINUX_H
_ |
| OLD | NEW |