// Copyright 2018 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef COMPONENTS_SYNC_SERVICE_NON_UI_SYNCABLE_SERVICE_BASED_DATA_TYPE_CONTROLLER_H_ #define COMPONENTS_SYNC_SERVICE_NON_UI_SYNCABLE_SERVICE_BASED_DATA_TYPE_CONTROLLER_H_ #include "base/functional/callback_forward.h" #include "base/memory/scoped_refptr.h" #include "base/memory/weak_ptr.h" #include "base/task/sequenced_task_runner.h" #include "components/sync/base/data_type.h" #include "components/sync/model/data_type_store.h" #include "components/sync/service/data_type_controller.h" namespace syncer { class SyncableService; // Controller responsible for integrating legacy data type implementations // (SyncableService) within the new sync architecture (USS), for types living // outside the UI thread. // This requires interacting with the SyncableService in a model thread that is // not the UI thread, including the construction and destruction of objects // (most notably SyncableServiceBasedBridge) in the model thread as specified // in the constructor. class NonUiSyncableServiceBasedDataTypeController : public DataTypeController { … }; } // namespace syncer #endif // COMPONENTS_SYNC_SERVICE_NON_UI_SYNCABLE_SERVICE_BASED_DATA_TYPE_CONTROLLER_H_