Index: components/sync_driver/startup_controller.h |
diff --git a/components/sync_driver/startup_controller.h b/components/sync_driver/startup_controller.h |
deleted file mode 100644 |
index 4f63b0b0787a14d918ba645689b1019d6e8b5826..0000000000000000000000000000000000000000 |
--- a/components/sync_driver/startup_controller.h |
+++ /dev/null |
@@ -1,117 +0,0 @@ |
-// Copyright 2014 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. |
- |
-#ifndef COMPONENTS_SYNC_DRIVER_STARTUP_CONTROLLER_H_ |
-#define COMPONENTS_SYNC_DRIVER_STARTUP_CONTROLLER_H_ |
- |
-#include "base/callback.h" |
-#include "base/memory/weak_ptr.h" |
-#include "base/time/time.h" |
-#include "components/sync/base/model_type.h" |
- |
-namespace sync_driver { |
-class SyncPrefs; |
-} |
- |
-namespace browser_sync { |
- |
-// This class is used by ProfileSyncService to manage all logic and state |
-// pertaining to initialization of the SyncBackendHost (colloquially referred |
-// to as "the backend"). |
-class StartupController { |
- public: |
- StartupController(const sync_driver::SyncPrefs* sync_prefs, |
- base::Callback<bool()> can_start, |
- base::Closure start_backend); |
- ~StartupController(); |
- |
- // Starts up sync if it is requested by the user and preconditions are met. |
- // Returns true if these preconditions are met, although does not imply |
- // the backend was started. |
- bool TryStart(); |
- |
- // Same as TryStart() above, but bypasses deferred startup and the first setup |
- // complete check. |
- bool TryStartImmediately(); |
- |
- // Called when a datatype (SyncableService) has a need for sync to start |
- // ASAP, presumably because a local change event has occurred but we're |
- // still in deferred start mode, meaning the SyncableService hasn't been |
- // told to MergeDataAndStartSyncing yet. |
- // It is expected that |type| is a currently active datatype. |
- void OnDataTypeRequestsSyncStartup(syncer::ModelType type); |
- |
- // Prepares this object for a new attempt to start sync, forgetting |
- // whether or not preconditions were previously met. |
- // NOTE: This resets internal state managed by this class, but does not |
- // touch values that are explicitly set and reset by higher layers to |
- // tell this class whether a setup UI dialog is being shown to the user. |
- // See setup_in_progress_. |
- void Reset(const syncer::ModelTypeSet registered_types); |
- |
- // Sets the setup in progress flag and tries to start sync if it's true. |
- void SetSetupInProgress(bool setup_in_progress); |
- |
- bool IsSetupInProgress() const { return setup_in_progress_; } |
- base::Time start_backend_time() const { return start_backend_time_; } |
- std::string GetBackendInitializationStateString() const; |
- |
- void OverrideFallbackTimeoutForTest(const base::TimeDelta& timeout); |
- |
- private: |
- enum StartUpDeferredOption { |
- STARTUP_BACKEND_DEFERRED, |
- STARTUP_IMMEDIATE |
- }; |
- // Returns true if all conditions to start the backend are met. |
- bool StartUp(StartUpDeferredOption deferred_option); |
- void OnFallbackStartupTimerExpired(); |
- |
- // Records time spent in deferred state with UMA histograms. |
- void RecordTimeDeferred(); |
- |
- // If true, will bypass the FirstSetupComplete check when triggering sync |
- // startup. |
- bool bypass_setup_complete_; |
- |
- // True if we should start sync ASAP because either a SyncableService has |
- // requested it, or we're done waiting for a sign and decided to go ahead. |
- bool received_start_request_; |
- |
- // The time that StartUp() is called. This is used to calculate time spent |
- // in the deferred state; that is, after StartUp and before invoking the |
- // start_backend_ callback. |
- base::Time start_up_time_; |
- |
- // If |true|, there is setup UI visible so we should not start downloading |
- // data types. |
- // Note: this is explicitly controlled by higher layers (UI) and is meant to |
- // reflect what the UI claims the setup state to be. Therefore, only set this |
- // due to explicit requests to do so via SetSetupInProgress. |
- bool setup_in_progress_; |
- |
- const sync_driver::SyncPrefs* sync_prefs_; |
- |
- // A function that can be invoked repeatedly to determine whether sync can be |
- // started. |start_backend_| should not be invoked unless this returns true. |
- base::Callback<bool()> can_start_; |
- |
- // The callback we invoke when it's time to call expensive |
- // startup routines for the sync backend. |
- base::Closure start_backend_; |
- |
- // The time at which we invoked the start_backend_ callback. |
- base::Time start_backend_time_; |
- |
- base::TimeDelta fallback_timeout_; |
- |
- // Used to compute preferred_types from SyncPrefs as-needed. |
- syncer::ModelTypeSet registered_types_; |
- |
- base::WeakPtrFactory<StartupController> weak_factory_; |
-}; |
- |
-} // namespace browser_sync |
- |
-#endif // COMPONENTS_SYNC_DRIVER_STARTUP_CONTROLLER_H_ |