Commit 725f14c3 authored by Austin Sullivan's avatar Austin Sullivan Committed by Chromium LUCI CQ

Make AsyncFileUtilAdapter take a unique_ptr

Currently takes a raw ptr. The reasoning for such is not strong:
"This doesn't take std::unique_ptr<> just to save extra base::WrapUnique"

Bug: N/A
Change-Id: I5144706466787d7ee23210d61c2f855065e391ef
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2627132Reviewed-by: default avatarVictor Costan <pwnall@chromium.org>
Reviewed-by: default avatarAustin Tankiang <austinct@chromium.org>
Commit-Queue: Austin Sullivan <asully@chromium.org>
Cr-Commit-Position: refs/heads/master@{#843319}
parent 30030867
...@@ -204,7 +204,8 @@ class DeleteOperation { ...@@ -204,7 +204,8 @@ class DeleteOperation {
} // namespace } // namespace
DriveFsAsyncFileUtil::DriveFsAsyncFileUtil(Profile* profile) DriveFsAsyncFileUtil::DriveFsAsyncFileUtil(Profile* profile)
: AsyncFileUtilAdapter(new DriveFsFileUtil), profile_(profile) {} : AsyncFileUtilAdapter(std::make_unique<DriveFsFileUtil>()),
profile_(profile) {}
DriveFsAsyncFileUtil::~DriveFsAsyncFileUtil() = default; DriveFsAsyncFileUtil::~DriveFsAsyncFileUtil() = default;
......
...@@ -99,7 +99,8 @@ class DeleteRecursivelyOperation { ...@@ -99,7 +99,8 @@ class DeleteRecursivelyOperation {
} // namespace } // namespace
SmbFsAsyncFileUtil::SmbFsAsyncFileUtil(Profile* profile) SmbFsAsyncFileUtil::SmbFsAsyncFileUtil(Profile* profile)
: AsyncFileUtilAdapter(new storage::LocalFileUtil), profile_(profile) { : AsyncFileUtilAdapter(std::make_unique<storage::LocalFileUtil>()),
profile_(profile) {
DCHECK(profile_); DCHECK(profile_);
} }
......
...@@ -162,8 +162,9 @@ void RunCreateOrOpenCallback(FileSystemOperationContext* context, ...@@ -162,8 +162,9 @@ void RunCreateOrOpenCallback(FileSystemOperationContext* context,
} // namespace } // namespace
AsyncFileUtilAdapter::AsyncFileUtilAdapter(FileSystemFileUtil* sync_file_util) AsyncFileUtilAdapter::AsyncFileUtilAdapter(
: sync_file_util_(sync_file_util) { std::unique_ptr<FileSystemFileUtil> sync_file_util)
: sync_file_util_(std::move(sync_file_util)) {
DCHECK(sync_file_util_.get()); DCHECK(sync_file_util_.get());
} }
......
...@@ -31,11 +31,8 @@ class FileSystemFileUtil; ...@@ -31,11 +31,8 @@ class FileSystemFileUtil;
class COMPONENT_EXPORT(STORAGE_BROWSER) AsyncFileUtilAdapter class COMPONENT_EXPORT(STORAGE_BROWSER) AsyncFileUtilAdapter
: public AsyncFileUtil { : public AsyncFileUtil {
public: public:
// Creates a new AsyncFileUtil for |sync_file_util|. This takes the explicit AsyncFileUtilAdapter(
// ownership of |sync_file_util|. (This doesn't take std::unique_ptr<> just std::unique_ptr<FileSystemFileUtil> sync_file_util);
// to save extra base::WrapUnique; in all use cases a new fresh FileUtil is
// created only for this adapter.)
explicit AsyncFileUtilAdapter(FileSystemFileUtil* sync_file_util);
~AsyncFileUtilAdapter() override; ~AsyncFileUtilAdapter() override;
......
...@@ -38,12 +38,12 @@ IsolatedFileSystemBackend::IsolatedFileSystemBackend( ...@@ -38,12 +38,12 @@ IsolatedFileSystemBackend::IsolatedFileSystemBackend(
bool use_for_type_platform_app) bool use_for_type_platform_app)
: use_for_type_native_local_(use_for_type_native_local), : use_for_type_native_local_(use_for_type_native_local),
use_for_type_platform_app_(use_for_type_platform_app), use_for_type_platform_app_(use_for_type_platform_app),
isolated_file_util_( isolated_file_util_(std::make_unique<AsyncFileUtilAdapter>(
std::make_unique<AsyncFileUtilAdapter>(new LocalFileUtil())), std::make_unique<LocalFileUtil>())),
dragged_file_util_( dragged_file_util_(std::make_unique<AsyncFileUtilAdapter>(
std::make_unique<AsyncFileUtilAdapter>(new DraggedFileUtil())), std::make_unique<DraggedFileUtil>())),
transient_file_util_( transient_file_util_(std::make_unique<AsyncFileUtilAdapter>(
std::make_unique<AsyncFileUtilAdapter>(new TransientFileUtil())) {} std::make_unique<TransientFileUtil>())) {}
IsolatedFileSystemBackend::~IsolatedFileSystemBackend() = default; IsolatedFileSystemBackend::~IsolatedFileSystemBackend() = default;
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
namespace storage { namespace storage {
AsyncFileUtil* AsyncFileUtil::CreateForLocalFileSystem() { AsyncFileUtil* AsyncFileUtil::CreateForLocalFileSystem() {
return new AsyncFileUtilAdapter(new LocalFileUtil()); return new AsyncFileUtilAdapter(std::make_unique<LocalFileUtil>());
} }
class LocalFileUtil::LocalFileEnumerator class LocalFileUtil::LocalFileEnumerator
......
...@@ -103,11 +103,13 @@ PluginPrivateFileSystemBackend::PluginPrivateFileSystemBackend( ...@@ -103,11 +103,13 @@ PluginPrivateFileSystemBackend::PluginPrivateFileSystemBackend(
base_path_(profile_path.Append(kFileSystemDirectory) base_path_(profile_path.Append(kFileSystemDirectory)
.Append(kPluginPrivateDirectory)), .Append(kPluginPrivateDirectory)),
plugin_map_(new FileSystemIDToPluginMap(file_task_runner)) { plugin_map_(new FileSystemIDToPluginMap(file_task_runner)) {
file_util_ = std::make_unique<AsyncFileUtilAdapter>(new ObfuscatedFileUtil( file_util_ = std::make_unique<AsyncFileUtilAdapter>(
special_storage_policy, base_path_, env_override, std::make_unique<ObfuscatedFileUtil>(
base::BindRepeating(&FileSystemIDToPluginMap::GetPluginIDForURL, special_storage_policy, base_path_, env_override,
base::Owned(plugin_map_)), base::BindRepeating(&FileSystemIDToPluginMap::GetPluginIDForURL,
std::set<std::string>(), nullptr, file_system_options.is_incognito())); base::Owned(plugin_map_)),
std::set<std::string>(), nullptr,
file_system_options.is_incognito()));
} }
PluginPrivateFileSystemBackend::~PluginPrivateFileSystemBackend() { PluginPrivateFileSystemBackend::~PluginPrivateFileSystemBackend() {
......
...@@ -188,13 +188,14 @@ SandboxFileSystemBackendDelegate::SandboxFileSystemBackendDelegate( ...@@ -188,13 +188,14 @@ SandboxFileSystemBackendDelegate::SandboxFileSystemBackendDelegate(
: file_task_runner_(file_task_runner), : file_task_runner_(file_task_runner),
quota_manager_proxy_(quota_manager_proxy), quota_manager_proxy_(quota_manager_proxy),
sandbox_file_util_(std::make_unique<AsyncFileUtilAdapter>( sandbox_file_util_(std::make_unique<AsyncFileUtilAdapter>(
new ObfuscatedFileUtil(special_storage_policy, std::make_unique<ObfuscatedFileUtil>(
profile_path.Append(kFileSystemDirectory), special_storage_policy,
env_override, profile_path.Append(kFileSystemDirectory),
base::BindRepeating(&GetTypeStringForURL), env_override,
GetKnownTypeStrings(), base::BindRepeating(&GetTypeStringForURL),
this, GetKnownTypeStrings(),
file_system_options.is_incognito()))), this,
file_system_options.is_incognito()))),
file_system_usage_cache_(std::make_unique<FileSystemUsageCache>( file_system_usage_cache_(std::make_unique<FileSystemUsageCache>(
file_system_options.is_incognito())), file_system_options.is_incognito())),
quota_observer_( quota_observer_(
......
...@@ -118,8 +118,8 @@ TestFileSystemBackend::TestFileSystemBackend( ...@@ -118,8 +118,8 @@ TestFileSystemBackend::TestFileSystemBackend(
const base::FilePath& base_path) const base::FilePath& base_path)
: base_path_(base_path), : base_path_(base_path),
task_runner_(task_runner), task_runner_(task_runner),
file_util_( file_util_(std::make_unique<AsyncFileUtilAdapter>(
std::make_unique<AsyncFileUtilAdapter>(new TestFileUtil(base_path))), std::make_unique<TestFileUtil>(base_path))),
quota_util_(std::make_unique<QuotaUtil>()), quota_util_(std::make_unique<QuotaUtil>()),
require_copy_or_move_validator_(false) { require_copy_or_move_validator_(false) {
update_observers_ = update_observers_ =
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment