Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / chrome / browser / sync / glue / sync_start_util.h
blob473091979593d02558e64c614ecee878bb65fc1d
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.
8 #ifndef CHROME_BROWSER_SYNC_GLUE_SYNC_START_UTIL_H_
9 #define CHROME_BROWSER_SYNC_GLUE_SYNC_START_UTIL_H_
11 #include "sync/api/syncable_service.h"
13 namespace base {
14 class FilePath;
17 namespace sync_start_util {
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.
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.
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);
31 } // namespace sync_start_util
33 #endif // CHROME_BROWSER_SYNC_GLUE_SYNC_START_UTIL_H_