| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef CHROME_BROWSER_SYNC_GLUE_SYNC_BACKEND_HOST_H_ | 5 #ifndef CHROME_BROWSER_SYNC_GLUE_SYNC_BACKEND_HOST_H_ |
| 6 #define CHROME_BROWSER_SYNC_GLUE_SYNC_BACKEND_HOST_H_ | 6 #define CHROME_BROWSER_SYNC_GLUE_SYNC_BACKEND_HOST_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 16 matching lines...) Expand all Loading... |
| 27 #include "sync/internal_api/public/util/report_unrecoverable_error_function.h" | 27 #include "sync/internal_api/public/util/report_unrecoverable_error_function.h" |
| 28 #include "sync/internal_api/public/util/unrecoverable_error_handler.h" | 28 #include "sync/internal_api/public/util/unrecoverable_error_handler.h" |
| 29 #include "sync/internal_api/public/util/weak_handle.h" | 29 #include "sync/internal_api/public/util/weak_handle.h" |
| 30 #include "sync/notifier/sync_notifier_factory.h" | 30 #include "sync/notifier/sync_notifier_factory.h" |
| 31 #include "sync/protocol/encryption.pb.h" | 31 #include "sync/protocol/encryption.pb.h" |
| 32 #include "sync/protocol/sync_protocol_error.h" | 32 #include "sync/protocol/sync_protocol_error.h" |
| 33 | 33 |
| 34 class MessageLoop; | 34 class MessageLoop; |
| 35 class Profile; | 35 class Profile; |
| 36 | 36 |
| 37 namespace syncer { |
| 38 class SyncManagerFactory; |
| 39 } |
| 40 |
| 37 namespace browser_sync { | 41 namespace browser_sync { |
| 38 | 42 |
| 39 class ChangeProcessor; | 43 class ChangeProcessor; |
| 40 struct Experiments; | 44 struct Experiments; |
| 41 class InvalidatorStorage; | 45 class InvalidatorStorage; |
| 42 class JsBackend; | 46 class JsBackend; |
| 43 class JsEventHandler; | 47 class JsEventHandler; |
| 44 class SyncBackendRegistrar; | 48 class SyncBackendRegistrar; |
| 45 class SyncPrefs; | 49 class SyncPrefs; |
| 46 | 50 |
| (...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 162 // Optionally delete the Sync Data folder (if it's corrupt). | 166 // Optionally delete the Sync Data folder (if it's corrupt). |
| 163 // |report_unrecoverable_error_function| can be NULL. | 167 // |report_unrecoverable_error_function| can be NULL. |
| 164 // Note: |unrecoverable_error_handler| may be invoked from any thread. | 168 // Note: |unrecoverable_error_handler| may be invoked from any thread. |
| 165 void Initialize( | 169 void Initialize( |
| 166 SyncFrontend* frontend, | 170 SyncFrontend* frontend, |
| 167 const syncer::WeakHandle<syncer::JsEventHandler>& event_handler, | 171 const syncer::WeakHandle<syncer::JsEventHandler>& event_handler, |
| 168 const GURL& service_url, | 172 const GURL& service_url, |
| 169 syncer::ModelTypeSet initial_types, | 173 syncer::ModelTypeSet initial_types, |
| 170 const syncer::SyncCredentials& credentials, | 174 const syncer::SyncCredentials& credentials, |
| 171 bool delete_sync_data_folder, | 175 bool delete_sync_data_folder, |
| 176 syncer::SyncManagerFactory* sync_manager_factory, |
| 172 syncer::UnrecoverableErrorHandler* unrecoverable_error_handler, | 177 syncer::UnrecoverableErrorHandler* unrecoverable_error_handler, |
| 173 syncer::ReportUnrecoverableErrorFunction | 178 syncer::ReportUnrecoverableErrorFunction |
| 174 report_unrecoverable_error_function); | 179 report_unrecoverable_error_function); |
| 175 | 180 |
| 176 // Called from |frontend_loop| to update SyncCredentials. | 181 // Called from |frontend_loop| to update SyncCredentials. |
| 177 void UpdateCredentials(const syncer::SyncCredentials& credentials); | 182 void UpdateCredentials(const syncer::SyncCredentials& credentials); |
| 178 | 183 |
| 179 // This starts the SyncerThread running a Syncer object to communicate with | 184 // This starts the SyncerThread running a Syncer object to communicate with |
| 180 // sync servers. Until this is called, no changes will leave or enter this | 185 // sync servers. Until this is called, no changes will leave or enter this |
| 181 // browser from the cloud / sync servers. | 186 // browser from the cloud / sync servers. |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 268 | 273 |
| 269 void GetModelSafeRoutingInfo(syncer::ModelSafeRoutingInfo* out) const; | 274 void GetModelSafeRoutingInfo(syncer::ModelSafeRoutingInfo* out) const; |
| 270 | 275 |
| 271 protected: | 276 protected: |
| 272 // The types and functions below are protected so that test | 277 // The types and functions below are protected so that test |
| 273 // subclasses can use them. | 278 // subclasses can use them. |
| 274 // | 279 // |
| 275 // TODO(akalin): Figure out a better way for tests to hook into | 280 // TODO(akalin): Figure out a better way for tests to hook into |
| 276 // SyncBackendHost. | 281 // SyncBackendHost. |
| 277 | 282 |
| 278 typedef base::Callback<syncer::HttpPostProviderFactory*(void)> | 283 typedef base::Callback<scoped_ptr<syncer::HttpPostProviderFactory>(void)> |
| 279 MakeHttpBridgeFactoryFn; | 284 MakeHttpBridgeFactoryFn; |
| 280 | 285 |
| 281 struct DoInitializeOptions { | 286 struct DoInitializeOptions { |
| 282 DoInitializeOptions( | 287 DoInitializeOptions( |
| 283 MessageLoop* sync_loop, | 288 MessageLoop* sync_loop, |
| 284 SyncBackendRegistrar* registrar, | 289 SyncBackendRegistrar* registrar, |
| 285 const syncer::ModelSafeRoutingInfo& routing_info, | 290 const syncer::ModelSafeRoutingInfo& routing_info, |
| 286 const std::vector<syncer::ModelSafeWorker*>& workers, | 291 const std::vector<syncer::ModelSafeWorker*>& workers, |
| 287 syncer::ExtensionsActivityMonitor* extensions_activity_monitor, | 292 syncer::ExtensionsActivityMonitor* extensions_activity_monitor, |
| 288 const syncer::WeakHandle<syncer::JsEventHandler>& event_handler, | 293 const syncer::WeakHandle<syncer::JsEventHandler>& event_handler, |
| 289 const GURL& service_url, | 294 const GURL& service_url, |
| 290 MakeHttpBridgeFactoryFn make_http_bridge_factory_fn, | 295 MakeHttpBridgeFactoryFn make_http_bridge_factory_fn, |
| 291 const syncer::SyncCredentials& credentials, | 296 const syncer::SyncCredentials& credentials, |
| 292 ChromeSyncNotificationBridge* chrome_sync_notification_bridge, | 297 ChromeSyncNotificationBridge* chrome_sync_notification_bridge, |
| 293 syncer::SyncNotifierFactory* sync_notifier_factory, | 298 syncer::SyncNotifierFactory* sync_notifier_factory, |
| 299 syncer::SyncManagerFactory* sync_manager_factory, |
| 294 bool delete_sync_data_folder, | 300 bool delete_sync_data_folder, |
| 295 const std::string& restored_key_for_bootstrapping, | 301 const std::string& restored_key_for_bootstrapping, |
| 296 syncer::SyncManager::TestingMode testing_mode, | 302 syncer::SyncManager::TestingMode testing_mode, |
| 297 syncer::UnrecoverableErrorHandler* unrecoverable_error_handler, | 303 syncer::UnrecoverableErrorHandler* unrecoverable_error_handler, |
| 298 syncer::ReportUnrecoverableErrorFunction | 304 syncer::ReportUnrecoverableErrorFunction |
| 299 report_unrecoverable_error_function); | 305 report_unrecoverable_error_function); |
| 300 ~DoInitializeOptions(); | 306 ~DoInitializeOptions(); |
| 301 | 307 |
| 302 MessageLoop* sync_loop; | 308 MessageLoop* sync_loop; |
| 303 SyncBackendRegistrar* registrar; | 309 SyncBackendRegistrar* registrar; |
| 304 syncer::ModelSafeRoutingInfo routing_info; | 310 syncer::ModelSafeRoutingInfo routing_info; |
| 305 std::vector<syncer::ModelSafeWorker*> workers; | 311 std::vector<syncer::ModelSafeWorker*> workers; |
| 306 syncer::ExtensionsActivityMonitor* extensions_activity_monitor; | 312 syncer::ExtensionsActivityMonitor* extensions_activity_monitor; |
| 307 syncer::WeakHandle<syncer::JsEventHandler> event_handler; | 313 syncer::WeakHandle<syncer::JsEventHandler> event_handler; |
| 308 GURL service_url; | 314 GURL service_url; |
| 309 // Overridden by tests. | 315 // Overridden by tests. |
| 310 MakeHttpBridgeFactoryFn make_http_bridge_factory_fn; | 316 MakeHttpBridgeFactoryFn make_http_bridge_factory_fn; |
| 311 syncer::SyncCredentials credentials; | 317 syncer::SyncCredentials credentials; |
| 312 ChromeSyncNotificationBridge* const chrome_sync_notification_bridge; | 318 ChromeSyncNotificationBridge* const chrome_sync_notification_bridge; |
| 313 syncer::SyncNotifierFactory* const sync_notifier_factory; | 319 syncer::SyncNotifierFactory* const sync_notifier_factory; |
| 320 syncer::SyncManagerFactory* const sync_manager_factory; |
| 314 std::string lsid; | 321 std::string lsid; |
| 315 bool delete_sync_data_folder; | 322 bool delete_sync_data_folder; |
| 316 std::string restored_key_for_bootstrapping; | 323 std::string restored_key_for_bootstrapping; |
| 317 syncer::SyncManager::TestingMode testing_mode; | 324 syncer::SyncManager::TestingMode testing_mode; |
| 318 syncer::UnrecoverableErrorHandler* unrecoverable_error_handler; | 325 syncer::UnrecoverableErrorHandler* unrecoverable_error_handler; |
| 319 syncer::ReportUnrecoverableErrorFunction | 326 syncer::ReportUnrecoverableErrorFunction |
| 320 report_unrecoverable_error_function; | 327 report_unrecoverable_error_function; |
| 321 }; | 328 }; |
| 322 | 329 |
| 323 // Allows tests to perform alternate core initialization work. | 330 // Allows tests to perform alternate core initialization work. |
| (...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 495 | 502 |
| 496 // UI-thread cache of the last SyncSessionSnapshot received from syncapi. | 503 // UI-thread cache of the last SyncSessionSnapshot received from syncapi. |
| 497 syncer::sessions::SyncSessionSnapshot last_snapshot_; | 504 syncer::sessions::SyncSessionSnapshot last_snapshot_; |
| 498 | 505 |
| 499 DISALLOW_COPY_AND_ASSIGN(SyncBackendHost); | 506 DISALLOW_COPY_AND_ASSIGN(SyncBackendHost); |
| 500 }; | 507 }; |
| 501 | 508 |
| 502 } // namespace browser_sync | 509 } // namespace browser_sync |
| 503 | 510 |
| 504 #endif // CHROME_BROWSER_SYNC_GLUE_SYNC_BACKEND_HOST_H_ | 511 #endif // CHROME_BROWSER_SYNC_GLUE_SYNC_BACKEND_HOST_H_ |
| OLD | NEW |