summaryrefslogtreecommitdiffstats
path: root/webkit/fileapi
diff options
context:
space:
mode:
authorkmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-07 19:44:33 +0000
committerkmadhusu@chromium.org <kmadhusu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-07 19:44:33 +0000
commitd109fcb493242dafe93f302b60d5cb901ac23cf9 (patch)
tree3e12bffda08c553d00bd76618be0ac79305f5f18 /webkit/fileapi
parentf36fb17cc320e8714e27931f96d22274f35d0607 (diff)
downloadchromium_src-d109fcb493242dafe93f302b60d5cb901ac23cf9.zip
chromium_src-d109fcb493242dafe93f302b60d5cb901ac23cf9.tar.gz
chromium_src-d109fcb493242dafe93f302b60d5cb901ac23cf9.tar.bz2
Clean up: Modified FileSystemFileUtil::CreateFileEnumerator function signature to return a scoped_ptr.
Return a scoped_ptr to indicate that CreateFileEnumerator is passing the ownership of a heap-allocated object to the caller. BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/11293096 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166494 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/fileapi')
-rw-r--r--webkit/fileapi/file_system_file_util.h3
-rw-r--r--webkit/fileapi/isolated_file_util.cc25
-rw-r--r--webkit/fileapi/isolated_file_util.h3
-rw-r--r--webkit/fileapi/isolated_file_util_unittest.cc12
-rw-r--r--webkit/fileapi/local_file_util.cc22
-rw-r--r--webkit/fileapi/local_file_util.h3
-rw-r--r--webkit/fileapi/media/device_media_file_util.cc21
-rw-r--r--webkit/fileapi/media/device_media_file_util.h3
-rw-r--r--webkit/fileapi/media/mtp_device_delegate.h6
-rw-r--r--webkit/fileapi/media/native_media_file_util.cc12
-rw-r--r--webkit/fileapi/media/native_media_file_util.h3
-rw-r--r--webkit/fileapi/native_file_util.cc18
-rw-r--r--webkit/fileapi/native_file_util.h7
-rw-r--r--webkit/fileapi/obfuscated_file_util.cc15
-rw-r--r--webkit/fileapi/obfuscated_file_util.h3
15 files changed, 85 insertions, 71 deletions
diff --git a/webkit/fileapi/file_system_file_util.h b/webkit/fileapi/file_system_file_util.h
index 344cb82..bab0881 100644
--- a/webkit/fileapi/file_system_file_util.h
+++ b/webkit/fileapi/file_system_file_util.h
@@ -8,6 +8,7 @@
#include "base/file_path.h"
#include "base/file_util_proxy.h"
#include "base/memory/ref_counted.h"
+#include "base/memory/scoped_ptr.h"
#include "base/platform_file.h"
#include "webkit/fileapi/file_system_url.h"
#include "webkit/storage/webkit_storage_export.h"
@@ -120,7 +121,7 @@ class WEBKIT_STORAGE_EXPORT FileSystemFileUtil {
//
// The supplied context must remain valid at least lifetime of the enumerator
// instance.
- virtual AbstractFileEnumerator* CreateFileEnumerator(
+ virtual scoped_ptr<AbstractFileEnumerator> CreateFileEnumerator(
FileSystemOperationContext* context,
const FileSystemURL& root_url,
bool recursive) = 0;
diff --git a/webkit/fileapi/isolated_file_util.cc b/webkit/fileapi/isolated_file_util.cc
index 5084352..0176d77 100644
--- a/webkit/fileapi/isolated_file_util.cc
+++ b/webkit/fileapi/isolated_file_util.cc
@@ -7,7 +7,6 @@
#include <string>
#include <vector>
-#include "base/memory/scoped_ptr.h"
#include "webkit/blob/shareable_file_reference.h"
#include "webkit/fileapi/file_system_context.h"
#include "webkit/fileapi/file_system_operation_context.h"
@@ -99,9 +98,8 @@ FilePath RecursiveSetFileEnumerator::Next() {
// Enumerates subdirectories of the next path.
FileInfo& next_file = *file_iter_++;
- current_enumerator_.reset(
- NativeFileUtil::CreateFileEnumerator(
- next_file.path, true /* recursive */));
+ current_enumerator_ = NativeFileUtil::CreateFileEnumerator(
+ next_file.path, true /* recursive */);
DCHECK(current_enumerator_.get());
return current_enumerator_->Next();
}
@@ -160,11 +158,11 @@ PlatformFileError DraggedFileUtil::GetFileInfo(
return error;
}
-FileSystemFileUtil::AbstractFileEnumerator*
-DraggedFileUtil::CreateFileEnumerator(
- FileSystemOperationContext* context,
- const FileSystemURL& root,
- bool recursive) {
+scoped_ptr<FileSystemFileUtil::AbstractFileEnumerator>
+ DraggedFileUtil::CreateFileEnumerator(
+ FileSystemOperationContext* context,
+ const FileSystemURL& root,
+ bool recursive) {
DCHECK(root.is_valid());
if (!root.path().empty())
return NativeFileUtil::CreateFileEnumerator(root.path(), recursive);
@@ -173,9 +171,12 @@ DraggedFileUtil::CreateFileEnumerator(
std::vector<FileInfo> toplevels;
IsolatedContext::GetInstance()->GetDraggedFileInfo(
root.filesystem_id(), &toplevels);
- if (!recursive)
- return new SetFileEnumerator(toplevels);
- return new RecursiveSetFileEnumerator(toplevels);
+ if (!recursive) {
+ return make_scoped_ptr(new SetFileEnumerator(toplevels))
+ .PassAs<FileSystemFileUtil::AbstractFileEnumerator>();
+ }
+ return make_scoped_ptr(new RecursiveSetFileEnumerator(toplevels))
+ .PassAs<FileSystemFileUtil::AbstractFileEnumerator>();
}
bool DraggedFileUtil::IsDirectoryEmpty(
diff --git a/webkit/fileapi/isolated_file_util.h b/webkit/fileapi/isolated_file_util.h
index 652c334..3a647ef 100644
--- a/webkit/fileapi/isolated_file_util.h
+++ b/webkit/fileapi/isolated_file_util.h
@@ -5,6 +5,7 @@
#ifndef WEBKIT_FILEAPI_ISOLATED_FILE_UTIL_H_
#define WEBKIT_FILEAPI_ISOLATED_FILE_UTIL_H_
+#include "base/memory/scoped_ptr.h"
#include "webkit/fileapi/local_file_util.h"
#include "webkit/storage/webkit_storage_export.h"
@@ -38,7 +39,7 @@ class WEBKIT_STORAGE_EXPORT_PRIVATE DraggedFileUtil : public IsolatedFileUtil {
const FileSystemURL& url,
base::PlatformFileInfo* file_info,
FilePath* platform_path) OVERRIDE;
- virtual AbstractFileEnumerator* CreateFileEnumerator(
+ virtual scoped_ptr<AbstractFileEnumerator> CreateFileEnumerator(
FileSystemOperationContext* context,
const FileSystemURL& root_url,
bool recursive) OVERRIDE;
diff --git a/webkit/fileapi/isolated_file_util_unittest.cc b/webkit/fileapi/isolated_file_util_unittest.cc
index f6ddaad..c8be5c9 100644
--- a/webkit/fileapi/isolated_file_util_unittest.cc
+++ b/webkit/fileapi/isolated_file_util_unittest.cc
@@ -165,10 +165,10 @@ class IsolatedFileUtilTest : public testing::Test {
FilePath root_path1 = root1.path();
FilePath root_path2 = root2.path();
- scoped_ptr<FileSystemFileUtil::AbstractFileEnumerator> file_enum1;
context.reset(new FileSystemOperationContext(file_system_context()));
- file_enum1.reset(file_util1->CreateFileEnumerator(
- context.get(), root1, true /* recursive */));
+ scoped_ptr<FileSystemFileUtil::AbstractFileEnumerator> file_enum1 =
+ file_util1->CreateFileEnumerator(context.get(), root1,
+ true /* recursive */);
FilePath current;
std::set<FilePath> file_set1;
@@ -180,10 +180,10 @@ class IsolatedFileUtilTest : public testing::Test {
file_set1.insert(relative);
}
- scoped_ptr<FileSystemFileUtil::AbstractFileEnumerator> file_enum2;
context.reset(new FileSystemOperationContext(file_system_context()));
- file_enum2.reset(file_util2->CreateFileEnumerator(
- context.get(), root2, true /* recursive */));
+ scoped_ptr<FileSystemFileUtil::AbstractFileEnumerator> file_enum2 =
+ file_util2->CreateFileEnumerator(context.get(), root2,
+ true /* recursive */);
while (!(current = file_enum2->Next()).empty()) {
FilePath relative;
diff --git a/webkit/fileapi/local_file_util.cc b/webkit/fileapi/local_file_util.cc
index 1150ec3..35f7110 100644
--- a/webkit/fileapi/local_file_util.cc
+++ b/webkit/fileapi/local_file_util.cc
@@ -134,24 +134,28 @@ PlatformFileError LocalFileUtil::GetFileInfo(
return error;
}
-FileSystemFileUtil::AbstractFileEnumerator* LocalFileUtil::CreateFileEnumerator(
- FileSystemOperationContext* context,
- const FileSystemURL& root_url,
- bool recursive) {
+scoped_ptr<FileSystemFileUtil::AbstractFileEnumerator> LocalFileUtil::
+ CreateFileEnumerator(
+ FileSystemOperationContext* context,
+ const FileSystemURL& root_url,
+ bool recursive) {
FilePath file_path;
if (GetLocalFilePath(context, root_url, &file_path) !=
- base::PLATFORM_FILE_OK)
- return new EmptyFileEnumerator();
- return new LocalFileEnumerator(file_path, root_url.path(), recursive,
+ base::PLATFORM_FILE_OK) {
+ return make_scoped_ptr(new EmptyFileEnumerator)
+ .PassAs<FileSystemFileUtil::AbstractFileEnumerator>();
+ }
+ return make_scoped_ptr(new LocalFileEnumerator(
+ file_path, root_url.path(), recursive,
file_util::FileEnumerator::FILES |
- file_util::FileEnumerator::DIRECTORIES);
+ file_util::FileEnumerator::DIRECTORIES))
+ .PassAs<FileSystemFileUtil::AbstractFileEnumerator>();
}
PlatformFileError LocalFileUtil::GetLocalFilePath(
FileSystemOperationContext* context,
const FileSystemURL& url,
FilePath* local_file_path) {
-
FileSystemMountPointProvider* provider =
context->file_system_context()->GetMountPointProvider(url.type());
DCHECK(provider);
diff --git a/webkit/fileapi/local_file_util.h b/webkit/fileapi/local_file_util.h
index 7a04f96..b101ddf 100644
--- a/webkit/fileapi/local_file_util.h
+++ b/webkit/fileapi/local_file_util.h
@@ -13,6 +13,7 @@
#include "base/file_util.h"
#include "base/file_util_proxy.h"
#include "base/logging.h"
+#include "base/memory/scoped_ptr.h"
#include "base/platform_file.h"
#include "webkit/blob/shareable_file_reference.h"
#include "webkit/fileapi/file_system_file_util.h"
@@ -62,7 +63,7 @@ class WEBKIT_STORAGE_EXPORT_PRIVATE LocalFileUtil : public FileSystemFileUtil {
const FileSystemURL& url,
base::PlatformFileInfo* file_info,
FilePath* platform_file) OVERRIDE;
- virtual AbstractFileEnumerator* CreateFileEnumerator(
+ virtual scoped_ptr<AbstractFileEnumerator> CreateFileEnumerator(
FileSystemOperationContext* context,
const FileSystemURL& root_url,
bool recursive) OVERRIDE;
diff --git a/webkit/fileapi/media/device_media_file_util.cc b/webkit/fileapi/media/device_media_file_util.cc
index 350de5b..6283bff 100644
--- a/webkit/fileapi/media/device_media_file_util.cc
+++ b/webkit/fileapi/media/device_media_file_util.cc
@@ -5,7 +5,6 @@
#include "webkit/fileapi/media/device_media_file_util.h"
#include "base/file_util.h"
-#include "base/memory/scoped_ptr.h"
#include "base/message_loop_proxy.h"
#include "webkit/fileapi/file_system_operation_context.h"
#include "webkit/fileapi/file_system_url.h"
@@ -76,17 +75,17 @@ PlatformFileError DeviceMediaFileUtil::GetFileInfo(
return base::PLATFORM_FILE_ERROR_NOT_FOUND;
}
-FileSystemFileUtil::AbstractFileEnumerator*
-DeviceMediaFileUtil::CreateFileEnumerator(
- FileSystemOperationContext* context,
- const FileSystemURL& url,
- bool recursive) {
+scoped_ptr<FileSystemFileUtil::AbstractFileEnumerator>
+ DeviceMediaFileUtil::CreateFileEnumerator(
+ FileSystemOperationContext* context,
+ const FileSystemURL& url,
+ bool recursive) {
DCHECK(context->mtp_device_delegate());
- return new FilteringFileEnumerator(
- make_scoped_ptr(
- context->mtp_device_delegate()->CreateFileEnumerator(url.path(),
- recursive)),
- context->media_path_filter());
+ return make_scoped_ptr(new FilteringFileEnumerator(
+ context->mtp_device_delegate()->CreateFileEnumerator(url.path(),
+ recursive),
+ context->media_path_filter()))
+ .PassAs<FileSystemFileUtil::AbstractFileEnumerator>();
}
PlatformFileError DeviceMediaFileUtil::GetLocalFilePath(
diff --git a/webkit/fileapi/media/device_media_file_util.h b/webkit/fileapi/media/device_media_file_util.h
index f4cfe56..f543c90 100644
--- a/webkit/fileapi/media/device_media_file_util.h
+++ b/webkit/fileapi/media/device_media_file_util.h
@@ -6,6 +6,7 @@
#define WEBKIT_FILEAPI_MEDIA_DEVICE_MEDIA_FILE_UTIL_H_
#include "base/file_path.h"
+#include "base/memory/scoped_ptr.h"
#include "base/platform_file.h"
#include "webkit/fileapi/file_system_file_util.h"
#include "webkit/storage/webkit_storage_export.h"
@@ -47,7 +48,7 @@ class WEBKIT_STORAGE_EXPORT_PRIVATE DeviceMediaFileUtil
const FileSystemURL& url,
base::PlatformFileInfo* file_info,
FilePath* platform_path) OVERRIDE;
- virtual AbstractFileEnumerator* CreateFileEnumerator(
+ virtual scoped_ptr<AbstractFileEnumerator> CreateFileEnumerator(
FileSystemOperationContext* context,
const FileSystemURL& root_url,
bool recursive) OVERRIDE;
diff --git a/webkit/fileapi/media/mtp_device_delegate.h b/webkit/fileapi/media/mtp_device_delegate.h
index 5c031d2..0fc2d77 100644
--- a/webkit/fileapi/media/mtp_device_delegate.h
+++ b/webkit/fileapi/media/mtp_device_delegate.h
@@ -38,9 +38,9 @@ class MTPDeviceDelegate
// the file entries of |root| path. The instance needs to be freed by the
// caller, and its lifetime should not extend past when the current call
// returns to the main media task runner thread.
- virtual FileSystemFileUtil::AbstractFileEnumerator* CreateFileEnumerator(
- const FilePath& root,
- bool recursive) = 0;
+ virtual scoped_ptr<FileSystemFileUtil::AbstractFileEnumerator>
+ CreateFileEnumerator(const FilePath& root,
+ bool recursive) = 0;
// Updates the temporary snapshot file contents given by |local_path| with
// media file contents given by |device_file_path| and also returns the
diff --git a/webkit/fileapi/media/native_media_file_util.cc b/webkit/fileapi/media/native_media_file_util.cc
index e6ec54b..12fa3b1 100644
--- a/webkit/fileapi/media/native_media_file_util.cc
+++ b/webkit/fileapi/media/native_media_file_util.cc
@@ -38,18 +38,16 @@ PlatformFileError NativeMediaFileUtil::EnsureFileExists(
return base::PLATFORM_FILE_ERROR_SECURITY;
}
-FileSystemFileUtil::AbstractFileEnumerator*
+scoped_ptr<FileSystemFileUtil::AbstractFileEnumerator>
NativeMediaFileUtil::CreateFileEnumerator(
FileSystemOperationContext* context,
const FileSystemURL& root_url,
bool recursive) {
DCHECK(context);
-
- AbstractFileEnumerator* base_enumerator =
- IsolatedFileUtil::CreateFileEnumerator(context, root_url, recursive);
- return new FilteringFileEnumerator(
- scoped_ptr<AbstractFileEnumerator>(base_enumerator),
- context->media_path_filter());
+ return make_scoped_ptr(new FilteringFileEnumerator(
+ IsolatedFileUtil::CreateFileEnumerator(context, root_url, recursive),
+ context->media_path_filter()))
+ .PassAs<FileSystemFileUtil::AbstractFileEnumerator>();
}
PlatformFileError NativeMediaFileUtil::Touch(
diff --git a/webkit/fileapi/media/native_media_file_util.h b/webkit/fileapi/media/native_media_file_util.h
index 27dece6..431a315 100644
--- a/webkit/fileapi/media/native_media_file_util.h
+++ b/webkit/fileapi/media/native_media_file_util.h
@@ -5,6 +5,7 @@
#ifndef WEBKIT_FILEAPI_MEDIA_NATIVE_MEDIA_FILE_UTIL_H_
#define WEBKIT_FILEAPI_MEDIA_NATIVE_MEDIA_FILE_UTIL_H_
+#include "base/memory/scoped_ptr.h"
#include "webkit/fileapi/isolated_file_util.h"
#include "webkit/storage/webkit_storage_export.h"
@@ -27,7 +28,7 @@ class WEBKIT_STORAGE_EXPORT_PRIVATE NativeMediaFileUtil
virtual PlatformFileError EnsureFileExists(
FileSystemOperationContext* context,
const FileSystemURL& url, bool* created) OVERRIDE;
- virtual AbstractFileEnumerator* CreateFileEnumerator(
+ virtual scoped_ptr<AbstractFileEnumerator> CreateFileEnumerator(
FileSystemOperationContext* context,
const FileSystemURL& root_url,
bool recursive) OVERRIDE;
diff --git a/webkit/fileapi/native_file_util.cc b/webkit/fileapi/native_file_util.cc
index 995a9e9..934d0b7 100644
--- a/webkit/fileapi/native_file_util.cc
+++ b/webkit/fileapi/native_file_util.cc
@@ -155,12 +155,14 @@ PlatformFileError NativeFileUtil::GetFileInfo(
return base::PLATFORM_FILE_OK;
}
-FileSystemFileUtil::AbstractFileEnumerator*
-NativeFileUtil::CreateFileEnumerator(const FilePath& root_path,
- bool recursive) {
- return new NativeFileEnumerator(root_path, recursive,
+scoped_ptr<FileSystemFileUtil::AbstractFileEnumerator>
+ NativeFileUtil::CreateFileEnumerator(const FilePath& root_path,
+ bool recursive) {
+ return make_scoped_ptr(new NativeFileEnumerator(
+ root_path, recursive,
file_util::FileEnumerator::FILES |
- file_util::FileEnumerator::DIRECTORIES);
+ file_util::FileEnumerator::DIRECTORIES))
+ .PassAs<FileSystemFileUtil::AbstractFileEnumerator>();
}
PlatformFileError NativeFileUtil::Touch(
@@ -204,9 +206,9 @@ bool NativeFileUtil::IsDirectoryEmpty(const FilePath& path) {
}
PlatformFileError NativeFileUtil::CopyOrMoveFile(
- const FilePath& src_path,
- const FilePath& dest_path,
- bool copy) {
+ const FilePath& src_path,
+ const FilePath& dest_path,
+ bool copy) {
if (copy) {
if (file_util::CopyFile(src_path,
dest_path))
diff --git a/webkit/fileapi/native_file_util.h b/webkit/fileapi/native_file_util.h
index 5974fcb..ccf75bd 100644
--- a/webkit/fileapi/native_file_util.h
+++ b/webkit/fileapi/native_file_util.h
@@ -7,6 +7,7 @@
#include "base/file_path.h"
#include "base/file_util_proxy.h"
+#include "base/memory/scoped_ptr.h"
#include "base/platform_file.h"
#include "webkit/fileapi/file_system_file_util.h"
#include "webkit/storage/webkit_storage_export.h"
@@ -37,9 +38,9 @@ class WEBKIT_STORAGE_EXPORT_PRIVATE NativeFileUtil {
bool recursive);
static PlatformFileError GetFileInfo(const FilePath& path,
base::PlatformFileInfo* file_info);
- static FileSystemFileUtil::AbstractFileEnumerator* CreateFileEnumerator(
- const FilePath& root_path,
- bool recursive);
+ static scoped_ptr<FileSystemFileUtil::AbstractFileEnumerator>
+ CreateFileEnumerator(const FilePath& root_path,
+ bool recursive);
static PlatformFileError Touch(const FilePath& path,
const base::Time& last_access_time,
const base::Time& last_modified_time);
diff --git a/webkit/fileapi/obfuscated_file_util.cc b/webkit/fileapi/obfuscated_file_util.cc
index 87f5bc8..ccd964d 100644
--- a/webkit/fileapi/obfuscated_file_util.cc
+++ b/webkit/fileapi/obfuscated_file_util.cc
@@ -473,17 +473,20 @@ PlatformFileError ObfuscatedFileUtil::GetFileInfo(
file_info, platform_file_path);
}
-FileSystemFileUtil::AbstractFileEnumerator*
-ObfuscatedFileUtil::CreateFileEnumerator(
+scoped_ptr<FileSystemFileUtil::AbstractFileEnumerator>
+ ObfuscatedFileUtil::CreateFileEnumerator(
FileSystemOperationContext* context,
const FileSystemURL& root_url,
bool recursive) {
FileSystemDirectoryDatabase* db = GetDirectoryDatabase(
root_url.origin(), root_url.type(), false);
- if (!db)
- return new FileSystemFileUtil::EmptyFileEnumerator();
- return new ObfuscatedFileEnumerator(
- db, context, this, root_url, recursive);
+ if (!db) {
+ return make_scoped_ptr(new FileSystemFileUtil::EmptyFileEnumerator())
+ .PassAs<FileSystemFileUtil::AbstractFileEnumerator>();
+ }
+ return make_scoped_ptr(new ObfuscatedFileEnumerator(db, context, this,
+ root_url, recursive))
+ .PassAs<FileSystemFileUtil::AbstractFileEnumerator>();
}
PlatformFileError ObfuscatedFileUtil::GetLocalFilePath(
diff --git a/webkit/fileapi/obfuscated_file_util.h b/webkit/fileapi/obfuscated_file_util.h
index 50c3f11..e739076 100644
--- a/webkit/fileapi/obfuscated_file_util.h
+++ b/webkit/fileapi/obfuscated_file_util.h
@@ -11,6 +11,7 @@
#include "base/file_path.h"
#include "base/file_util_proxy.h"
+#include "base/memory/scoped_ptr.h"
#include "base/platform_file.h"
#include "base/timer.h"
#include "webkit/blob/shareable_file_reference.h"
@@ -82,7 +83,7 @@ class WEBKIT_STORAGE_EXPORT_PRIVATE ObfuscatedFileUtil
const FileSystemURL& url,
base::PlatformFileInfo* file_info,
FilePath* platform_file) OVERRIDE;
- virtual AbstractFileEnumerator* CreateFileEnumerator(
+ virtual scoped_ptr<AbstractFileEnumerator> CreateFileEnumerator(
FileSystemOperationContext* context,
const FileSystemURL& root_url,
bool recursive) OVERRIDE;