| OLD | NEW |
| (Empty) | |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 #include "sync/internal_api/sync_context_proxy_impl.h" |
| 6 |
| 7 #include "base/bind.h" |
| 8 #include "base/location.h" |
| 9 #include "base/message_loop/message_loop_proxy.h" |
| 10 #include "sync/engine/non_blocking_sync_common.h" |
| 11 #include "sync/internal_api/sync_context.h" |
| 12 |
| 13 namespace syncer { |
| 14 |
| 15 SyncContextProxyImpl::SyncContextProxyImpl( |
| 16 const scoped_refptr<base::SequencedTaskRunner>& sync_task_runner, |
| 17 const base::WeakPtr<SyncContext>& sync_context) |
| 18 : sync_task_runner_(sync_task_runner), sync_context_(sync_context) { |
| 19 } |
| 20 |
| 21 SyncContextProxyImpl::~SyncContextProxyImpl() { |
| 22 } |
| 23 |
| 24 void SyncContextProxyImpl::ConnectTypeToSync( |
| 25 ModelType type, |
| 26 const DataTypeState& data_type_state, |
| 27 const base::WeakPtr<ModelTypeSyncProxyImpl>& type_sync_proxy) { |
| 28 VLOG(1) << "ConnectTypeToSync: " << ModelTypeToString(type); |
| 29 sync_task_runner_->PostTask(FROM_HERE, |
| 30 base::Bind(&SyncContext::ConnectSyncTypeToWorker, |
| 31 sync_context_, |
| 32 type, |
| 33 data_type_state, |
| 34 base::MessageLoopProxy::current(), |
| 35 type_sync_proxy)); |
| 36 } |
| 37 |
| 38 void SyncContextProxyImpl::Disconnect(ModelType type) { |
| 39 sync_task_runner_->PostTask( |
| 40 FROM_HERE, base::Bind(&SyncContext::Disconnect, sync_context_, type)); |
| 41 } |
| 42 |
| 43 scoped_ptr<SyncContextProxy> SyncContextProxyImpl::Clone() const { |
| 44 return scoped_ptr<SyncContextProxy>( |
| 45 new SyncContextProxyImpl(sync_task_runner_, sync_context_)); |
| 46 } |
| 47 |
| 48 } // namespace syncer |
| OLD | NEW |