Index: sync/api/attachments/attachment_service_proxy.cc |
diff --git a/sync/api/attachments/attachment_service_proxy.cc b/sync/api/attachments/attachment_service_proxy.cc |
index 9bc40e5530ca745a403c7e71e0a3032e9792215d..6590033df531b2855ccdd0b85d6ac74b38122519 100644 |
--- a/sync/api/attachments/attachment_service_proxy.cc |
+++ b/sync/api/attachments/attachment_service_proxy.cc |
@@ -35,6 +35,15 @@ void ProxyDropCallback( |
task_runner->PostTask(FROM_HERE, base::Bind(callback, result)); |
} |
+// Invokes |callback| with |result| and |attachments| in the |task_runner| |
+// thread. |
+void ProxyStoreCallback( |
+ const scoped_refptr<base::SequencedTaskRunner>& task_runner, |
+ const AttachmentService::StoreCallback& callback, |
+ const AttachmentService::StoreResult& result) { |
+ task_runner->PostTask(FROM_HERE, base::Bind(callback, result)); |
+} |
+ |
} // namespace |
AttachmentServiceProxy::AttachmentServiceProxy() { |
@@ -85,11 +94,17 @@ void AttachmentServiceProxy::DropAttachments( |
proxy_callback)); |
} |
-void AttachmentServiceProxy::OnSyncDataAdd(const SyncData& sync_data) { |
+void AttachmentServiceProxy::StoreAttachments(const AttachmentList& attachments, |
+ const StoreCallback& callback) { |
DCHECK(wrapped_task_runner_); |
+ StoreCallback proxy_callback = base::Bind( |
+ &ProxyStoreCallback, base::MessageLoopProxy::current(), callback); |
wrapped_task_runner_->PostTask( |
FROM_HERE, |
- base::Bind(&AttachmentService::OnSyncDataAdd, core_, sync_data)); |
+ base::Bind(&AttachmentService::StoreAttachments, |
+ core_, |
+ attachments, |
+ proxy_callback)); |
} |
void AttachmentServiceProxy::OnSyncDataDelete(const SyncData& sync_data) { |
@@ -137,11 +152,13 @@ void AttachmentServiceProxy::Core::DropAttachments( |
wrapped_->DropAttachments(attachment_ids, callback); |
} |
-void AttachmentServiceProxy::Core::OnSyncDataAdd(const SyncData& sync_data) { |
+void AttachmentServiceProxy::Core::StoreAttachments( |
+ const AttachmentList& attachments, |
+ const StoreCallback& callback) { |
if (!wrapped_) { |
return; |
} |
- wrapped_->OnSyncDataAdd(sync_data); |
+ wrapped_->StoreAttachments(attachments, callback); |
} |
void AttachmentServiceProxy::Core::OnSyncDataDelete(const SyncData& sync_data) { |