summaryrefslogtreecommitdiffstats
path: root/chromium/storage/browser/quota/quota_manager_proxy.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/storage/browser/quota/quota_manager_proxy.cc')
-rw-r--r--chromium/storage/browser/quota/quota_manager_proxy.cc90
1 files changed, 29 insertions, 61 deletions
diff --git a/chromium/storage/browser/quota/quota_manager_proxy.cc b/chromium/storage/browser/quota/quota_manager_proxy.cc
index c4c37ec1bd0..0c30182c7a8 100644
--- a/chromium/storage/browser/quota/quota_manager_proxy.cc
+++ b/chromium/storage/browser/quota/quota_manager_proxy.cc
@@ -17,6 +17,7 @@
#include "base/sequence_checker.h"
#include "base/strings/string_number_conversions.h"
#include "base/synchronization/waitable_event.h"
+#include "base/task/bind_post_task.h"
#include "base/task/sequenced_task_runner.h"
#include "base/threading/thread_task_runner_handle.h"
#include "base/time/time.h"
@@ -34,39 +35,6 @@ using ::blink::StorageKey;
namespace storage {
-namespace {
-
-void DidGetBucket(scoped_refptr<base::SequencedTaskRunner> callback_task_runner,
- base::OnceCallback<void(QuotaErrorOr<BucketInfo>)> callback,
- QuotaErrorOr<BucketInfo> result) {
- DCHECK(callback_task_runner);
- DCHECK(callback);
-
- if (callback_task_runner->RunsTasksInCurrentSequence()) {
- std::move(callback).Run(std::move(result));
- return;
- }
- callback_task_runner->PostTask(
- FROM_HERE, base::BindOnce(std::move(callback), std::move(result)));
-}
-
-void DidGetStatus(
- scoped_refptr<base::SequencedTaskRunner> callback_task_runner,
- base::OnceCallback<void(blink::mojom::QuotaStatusCode)> callback,
- blink::mojom::QuotaStatusCode status) {
- DCHECK(callback_task_runner);
- DCHECK(callback);
-
- if (callback_task_runner->RunsTasksInCurrentSequence()) {
- std::move(callback).Run(std::move(status));
- return;
- }
- callback_task_runner->PostTask(
- FROM_HERE, base::BindOnce(std::move(callback), std::move(status)));
-}
-
-} // namespace
-
QuotaManagerProxy::QuotaManagerProxy(
QuotaManagerImpl* quota_manager_impl,
scoped_refptr<base::SequencedTaskRunner> quota_manager_impl_task_runner,
@@ -158,16 +126,16 @@ void QuotaManagerProxy::GetOrCreateBucket(
}
DCHECK_CALLED_ON_VALID_SEQUENCE(quota_manager_impl_sequence_checker_);
+
+ auto respond =
+ base::BindPostTask(std::move(callback_task_runner), std::move(callback));
if (!quota_manager_impl_) {
- DidGetBucket(std::move(callback_task_runner), std::move(callback),
- QuotaErrorOr<BucketInfo>(QuotaError::kUnknownError));
+ std::move(respond).Run(QuotaError::kUnknownError);
return;
}
- quota_manager_impl_->GetOrCreateBucket(
- storage_key, bucket_name,
- base::BindOnce(&DidGetBucket, std::move(callback_task_runner),
- std::move(callback)));
+ quota_manager_impl_->GetOrCreateBucket(storage_key, bucket_name,
+ std::move(respond));
}
QuotaErrorOr<BucketInfo> QuotaManagerProxy::GetOrCreateBucketSync(
@@ -211,16 +179,16 @@ void QuotaManagerProxy::GetOrCreateBucketDeprecated(
}
DCHECK_CALLED_ON_VALID_SEQUENCE(quota_manager_impl_sequence_checker_);
+
+ auto respond =
+ base::BindPostTask(std::move(callback_task_runner), std::move(callback));
if (!quota_manager_impl_) {
- DidGetBucket(std::move(callback_task_runner), std::move(callback),
- QuotaErrorOr<BucketInfo>(QuotaError::kUnknownError));
+ std::move(respond).Run(QuotaError::kUnknownError);
return;
}
quota_manager_impl_->GetOrCreateBucketDeprecated(
- storage_key, bucket_name, storage_type,
- base::BindOnce(&DidGetBucket, std::move(callback_task_runner),
- std::move(callback)));
+ storage_key, bucket_name, storage_type, std::move(respond));
}
void QuotaManagerProxy::CreateBucketForTesting(
@@ -242,16 +210,16 @@ void QuotaManagerProxy::CreateBucketForTesting(
}
DCHECK_CALLED_ON_VALID_SEQUENCE(quota_manager_impl_sequence_checker_);
+
+ auto respond =
+ base::BindPostTask(std::move(callback_task_runner), std::move(callback));
if (!quota_manager_impl_) {
- DidGetBucket(std::move(callback_task_runner), std::move(callback),
- QuotaErrorOr<BucketInfo>(QuotaError::kUnknownError));
+ std::move(respond).Run(QuotaError::kUnknownError);
return;
}
quota_manager_impl_->CreateBucketForTesting( // IN-TEST
- storage_key, bucket_name, storage_type,
- base::BindOnce(&DidGetBucket, std::move(callback_task_runner),
- std::move(callback)));
+ storage_key, bucket_name, storage_type, std::move(respond));
}
void QuotaManagerProxy::GetBucket(
@@ -273,16 +241,16 @@ void QuotaManagerProxy::GetBucket(
}
DCHECK_CALLED_ON_VALID_SEQUENCE(quota_manager_impl_sequence_checker_);
+
+ auto respond =
+ base::BindPostTask(std::move(callback_task_runner), std::move(callback));
if (!quota_manager_impl_) {
- DidGetBucket(std::move(callback_task_runner), std::move(callback),
- QuotaErrorOr<BucketInfo>(QuotaError::kUnknownError));
+ std::move(respond).Run(QuotaError::kUnknownError);
return;
}
- quota_manager_impl_->GetBucket(
- storage_key, bucket_name, type,
- base::BindOnce(&DidGetBucket, std::move(callback_task_runner),
- std::move(callback)));
+ quota_manager_impl_->GetBucket(storage_key, bucket_name, type,
+ std::move(respond));
}
void QuotaManagerProxy::DeleteBucket(
@@ -303,16 +271,16 @@ void QuotaManagerProxy::DeleteBucket(
}
DCHECK_CALLED_ON_VALID_SEQUENCE(quota_manager_impl_sequence_checker_);
+
+ auto respond =
+ base::BindPostTask(std::move(callback_task_runner), std::move(callback));
if (!quota_manager_impl_) {
- DidGetStatus(std::move(callback_task_runner), std::move(callback),
- blink::mojom::QuotaStatusCode::kUnknown);
+ std::move(respond).Run(blink::mojom::QuotaStatusCode::kUnknown);
return;
}
- quota_manager_impl_->FindAndDeleteBucketData(
- storage_key, bucket_name,
- base::BindOnce(&DidGetStatus, std::move(callback_task_runner),
- std::move(callback)));
+ quota_manager_impl_->FindAndDeleteBucketData(storage_key, bucket_name,
+ std::move(respond));
}
void QuotaManagerProxy::NotifyStorageAccessed(const StorageKey& storage_key,