extension_data_type_controller.cc revision 5f1c94371a64b3196d4be9466099bb892df9b88e
1// Copyright (c) 2012 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 "chrome/browser/sync/glue/extension_data_type_controller.h" 6 7#include "base/metrics/histogram.h" 8#include "chrome/browser/profiles/profile.h" 9#include "chrome/browser/sync/glue/chrome_report_unrecoverable_error.h" 10#include "content/public/browser/browser_thread.h" 11#include "extensions/browser/extension_system.h" 12 13using content::BrowserThread; 14 15namespace browser_sync { 16 17ExtensionDataTypeController::ExtensionDataTypeController( 18 syncer::ModelType type, 19 sync_driver::SyncApiComponentFactory* sync_factory, 20 Profile* profile, 21 const DisableTypeCallback& disable_callback) 22 : UIDataTypeController( 23 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::UI), 24 base::Bind(&ChromeReportUnrecoverableError), 25 disable_callback, 26 type, 27 sync_factory), 28 profile_(profile) { 29 DCHECK(type == syncer::EXTENSIONS || type == syncer::APPS); 30} 31 32ExtensionDataTypeController::~ExtensionDataTypeController() {} 33 34bool ExtensionDataTypeController::StartModels() { 35 extensions::ExtensionSystem::Get(profile_)->InitForRegularProfile(true); 36 return true; 37} 38 39} // namespace browser_sync 40