| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "webkit/fileapi/file_system_file_util.h" | 5 #include "webkit/fileapi/file_system_file_util.h" |
| 6 | 6 |
| 7 #include <stack> | 7 #include <stack> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/file_util_proxy.h" | 10 #include "base/file_util_proxy.h" |
| (...skipping 502 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 513 : public FileSystemFileUtil::AbstractFileEnumerator { | 513 : public FileSystemFileUtil::AbstractFileEnumerator { |
| 514 public: | 514 public: |
| 515 FileSystemFileEnumerator(const FilePath& root_path, | 515 FileSystemFileEnumerator(const FilePath& root_path, |
| 516 bool recursive, | 516 bool recursive, |
| 517 file_util::FileEnumerator::FileType file_type) | 517 file_util::FileEnumerator::FileType file_type) |
| 518 : file_enum_(root_path, recursive, file_type) { | 518 : file_enum_(root_path, recursive, file_type) { |
| 519 } | 519 } |
| 520 | 520 |
| 521 ~FileSystemFileEnumerator() {} | 521 ~FileSystemFileEnumerator() {} |
| 522 | 522 |
| 523 virtual FilePath Next(); | 523 virtual FilePath Next() OVERRIDE; |
| 524 virtual bool IsDirectory(); | 524 virtual int64 Size() OVERRIDE; |
| 525 virtual bool IsDirectory() OVERRIDE; |
| 525 | 526 |
| 526 private: | 527 private: |
| 527 file_util::FileEnumerator file_enum_; | 528 file_util::FileEnumerator file_enum_; |
| 529 file_util::FileEnumerator::FindInfo file_util_info_; |
| 528 }; | 530 }; |
| 529 | 531 |
| 530 FilePath FileSystemFileEnumerator::Next() { | 532 FilePath FileSystemFileEnumerator::Next() { |
| 531 return file_enum_.Next(); | 533 FilePath rv = file_enum_.Next(); |
| 534 if (!rv.empty()) |
| 535 file_enum_.GetFindInfo(&file_util_info_); |
| 536 return rv; |
| 537 } |
| 538 |
| 539 int64 FileSystemFileEnumerator::Size() { |
| 540 return file_util::FileEnumerator::GetFilesize(file_util_info_); |
| 532 } | 541 } |
| 533 | 542 |
| 534 bool FileSystemFileEnumerator::IsDirectory() { | 543 bool FileSystemFileEnumerator::IsDirectory() { |
| 535 file_util::FileEnumerator::FindInfo file_util_info; | 544 return file_util::FileEnumerator::IsDirectory(file_util_info_); |
| 536 file_enum_.GetFindInfo(&file_util_info); | |
| 537 return file_util::FileEnumerator::IsDirectory(file_util_info); | |
| 538 } | 545 } |
| 539 | 546 |
| 540 FileSystemFileUtil::AbstractFileEnumerator* | 547 FileSystemFileUtil::AbstractFileEnumerator* |
| 541 FileSystemFileUtil::CreateFileEnumerator( | 548 FileSystemFileUtil::CreateFileEnumerator( |
| 542 FileSystemOperationContext* unused, | 549 FileSystemOperationContext* unused, |
| 543 const FilePath& root_path) { | 550 const FilePath& root_path) { |
| 544 return new FileSystemFileEnumerator( | 551 return new FileSystemFileEnumerator( |
| 545 root_path, true, static_cast<file_util::FileEnumerator::FileType>( | 552 root_path, true, static_cast<file_util::FileEnumerator::FileType>( |
| 546 file_util::FileEnumerator::FILES | | 553 file_util::FileEnumerator::FILES | |
| 547 file_util::FileEnumerator::DIRECTORIES)); | 554 file_util::FileEnumerator::DIRECTORIES)); |
| 548 } | 555 } |
| 549 | 556 |
| 550 } // namespace fileapi | 557 } // namespace fileapi |
| OLD | NEW |