Index: chrome/browser/sync/glue/sync_start_util.h |
diff --git a/chrome/browser/sync/glue/sync_start_util.h b/chrome/browser/sync/glue/sync_start_util.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..473091979593d02558e64c614ecee878bb65fc1d |
--- /dev/null |
+++ b/chrome/browser/sync/glue/sync_start_util.h |
@@ -0,0 +1,33 @@ |
+// Copyright 2013 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+// |
+// Various utilities for kicking off sync initialization from data types or |
+// other services. |
+ |
+#ifndef CHROME_BROWSER_SYNC_GLUE_SYNC_START_UTIL_H_ |
+#define CHROME_BROWSER_SYNC_GLUE_SYNC_START_UTIL_H_ |
+ |
+#include "sync/api/syncable_service.h" |
+ |
+namespace base { |
+class FilePath; |
+} |
+ |
+namespace sync_start_util { |
+ |
+// Creates a StartSyncFlare that a SyncableService can use to tell |
+// ProfileSyncService it needs sync to start ASAP. Typically this would be |
+// given to the SyncableService on construction. |
+// |
+// The flare built by this function is designed to be Run()able from any thread |
+// so that non-UI types don't have to deal with posting tasks. |
+// |
+// |profile_path| is used to get a hold of the actual Profile* once the |
+// request to start sync is safely in UI Thread land. |
+syncer::SyncableService::StartSyncFlare GetFlareForSyncableService( |
+ const base::FilePath& profile_path); |
+ |
+} // namespace sync_start_util |
+ |
+#endif // CHROME_BROWSER_SYNC_GLUE_SYNC_START_UTIL_H_ |