Home | History | Annotate | Download | only in glue
      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