1 // Copyright 2013 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 // Various utilities for kicking off sync initialization from data types or 6 // other services. 7 8 #ifndef CHROME_BROWSER_SYNC_GLUE_SYNC_START_UTIL_H_ 9 #define CHROME_BROWSER_SYNC_GLUE_SYNC_START_UTIL_H_ 10 11 #include "sync/api/syncable_service.h" 12 13 namespace base { 14 class FilePath; 15 } 16 17 namespace sync_start_util { 18 19 // Creates a StartSyncFlare that a SyncableService can use to tell 20 // ProfileSyncService it needs sync to start ASAP. Typically this would be 21 // given to the SyncableService on construction. 22 // 23 // The flare built by this function is designed to be Run()able from any thread 24 // so that non-UI types don't have to deal with posting tasks. 25 // 26 // |profile_path| is used to get a hold of the actual Profile* once the 27 // request to start sync is safely in UI Thread land. 28 syncer::SyncableService::StartSyncFlare GetFlareForSyncableService( 29 const base::FilePath& profile_path); 30 31 } // namespace sync_start_util 32 33 #endif // CHROME_BROWSER_SYNC_GLUE_SYNC_START_UTIL_H_ 34