| 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/sandbox_mount_point_provider.h" | 5 #include "webkit/fileapi/sandbox_mount_point_provider.h" |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "base/logging.h" | 8 #include "base/logging.h" |
| 9 #include "base/memory/scoped_callback_factory.h" | 9 #include "base/memory/scoped_callback_factory.h" |
| 10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
| (...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 272 FILE_PATH_LITERAL("FS.old"); | 272 FILE_PATH_LITERAL("FS.old"); |
| 273 | 273 |
| 274 SandboxMountPointProvider::SandboxMountPointProvider( | 274 SandboxMountPointProvider::SandboxMountPointProvider( |
| 275 FileSystemPathManager* path_manager, | 275 FileSystemPathManager* path_manager, |
| 276 scoped_refptr<base::MessageLoopProxy> file_message_loop, | 276 scoped_refptr<base::MessageLoopProxy> file_message_loop, |
| 277 const FilePath& profile_path) | 277 const FilePath& profile_path) |
| 278 : FileSystemQuotaUtil(file_message_loop), | 278 : FileSystemQuotaUtil(file_message_loop), |
| 279 path_manager_(path_manager), | 279 path_manager_(path_manager), |
| 280 file_message_loop_(file_message_loop), | 280 file_message_loop_(file_message_loop), |
| 281 profile_path_(profile_path), | 281 profile_path_(profile_path), |
| 282 quota_file_util_(QuotaFileUtil::CreateDefault()), | |
| 283 sandbox_file_util_( | 282 sandbox_file_util_( |
| 284 new ObfuscatedFileSystemFileUtil( | 283 new ObfuscatedFileSystemFileUtil( |
| 285 profile_path.Append(kNewFileSystemDirectory), | 284 profile_path.Append(kNewFileSystemDirectory), |
| 286 quota_file_util_)) { | 285 QuotaFileUtil::CreateDefault())) { |
| 287 } | 286 } |
| 288 | 287 |
| 289 SandboxMountPointProvider::~SandboxMountPointProvider() { | 288 SandboxMountPointProvider::~SandboxMountPointProvider() { |
| 290 if (!file_message_loop_->BelongsToCurrentThread()) | 289 if (!file_message_loop_->BelongsToCurrentThread()) |
| 291 file_message_loop_->ReleaseSoon(FROM_HERE, sandbox_file_util_.release()); | 290 file_message_loop_->ReleaseSoon(FROM_HERE, sandbox_file_util_.release()); |
| 292 } | 291 } |
| 293 | 292 |
| 294 bool SandboxMountPointProvider::IsAccessAllowed(const GURL& origin_url, | 293 bool SandboxMountPointProvider::IsAccessAllowed(const GURL& origin_url, |
| 295 FileSystemType type, | 294 FileSystemType type, |
| 296 const FilePath& unused) { | 295 const FilePath& unused) { |
| (...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 556 base::PlatformFileInfo file_info; | 555 base::PlatformFileInfo file_info; |
| 557 FilePath platform_file_path; | 556 FilePath platform_file_path; |
| 558 if (!enumerator->IsDirectory()) { | 557 if (!enumerator->IsDirectory()) { |
| 559 base::PlatformFileError error = sandbox_file_util_->GetFileInfo( | 558 base::PlatformFileError error = sandbox_file_util_->GetFileInfo( |
| 560 &context, file_path_each, &file_info, &platform_file_path); | 559 &context, file_path_each, &file_info, &platform_file_path); |
| 561 if (error != base::PLATFORM_FILE_OK) | 560 if (error != base::PLATFORM_FILE_OK) |
| 562 NOTREACHED(); | 561 NOTREACHED(); |
| 563 else | 562 else |
| 564 usage += file_info.size; | 563 usage += file_info.size; |
| 565 } | 564 } |
| 566 usage += quota_file_util_->ComputeFilePathCost(file_path_each); | 565 usage += ObfuscatedFileSystemFileUtil::ComputeFilePathCost(file_path_each); |
| 567 } | 566 } |
| 568 // This clears the dirty flag too. | 567 // This clears the dirty flag too. |
| 569 FileSystemUsageCache::UpdateUsage(usage_file_path, usage); | 568 FileSystemUsageCache::UpdateUsage(usage_file_path, usage); |
| 570 return usage; | 569 return usage; |
| 571 } | 570 } |
| 572 | 571 |
| 573 void SandboxMountPointProvider::NotifyOriginWasAccessedOnIOThread( | 572 void SandboxMountPointProvider::NotifyOriginWasAccessedOnIOThread( |
| 574 QuotaManagerProxy* proxy, const GURL& origin_url, | 573 QuotaManagerProxy* proxy, const GURL& origin_url, |
| 575 fileapi::FileSystemType type) { | 574 fileapi::FileSystemType type) { |
| 576 DCHECK(type == fileapi::kFileSystemTypeTemporary || | 575 DCHECK(type == fileapi::kFileSystemTypeTemporary || |
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 652 | 651 |
| 653 // Creates the root directory. | 652 // Creates the root directory. |
| 654 root = origin_base_path.Append(OldCreateUniqueDirectoryName(origin_url)); | 653 root = origin_base_path.Append(OldCreateUniqueDirectoryName(origin_url)); |
| 655 if (!file_util::CreateDirectory(root)) | 654 if (!file_util::CreateDirectory(root)) |
| 656 return FilePath(); | 655 return FilePath(); |
| 657 | 656 |
| 658 return root; | 657 return root; |
| 659 } | 658 } |
| 660 | 659 |
| 661 } // namespace fileapi | 660 } // namespace fileapi |
| OLD | NEW |