- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / browser / sync / glue / sync_start_util.h
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_