Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(111)

Side by Side Diff: sync/internal_api/public/internal_components_factory.h

Issue 23717047: Retry: sync: Gracefully handle early shutdown (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Move signals to SyncaBackendHost::Core Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 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 // InternalComponentsFactory exists so that tests can override creation of 5 // InternalComponentsFactory exists so that tests can override creation of
6 // components used by the SyncManager that are not exposed across the sync 6 // components used by the SyncManager that are not exposed across the sync
7 // API boundary. 7 // API boundary.
8 8
9 #ifndef SYNC_INTERNAL_API_PUBLIC_INTERNAL_COMPONENTS_FACTORY_H_ 9 #ifndef SYNC_INTERNAL_API_PUBLIC_INTERNAL_COMPONENTS_FACTORY_H_
10 #define SYNC_INTERNAL_API_PUBLIC_INTERNAL_COMPONENTS_FACTORY_H_ 10 #define SYNC_INTERNAL_API_PUBLIC_INTERNAL_COMPONENTS_FACTORY_H_
11 11
12 #include <string> 12 #include <string>
13 #include <vector> 13 #include <vector>
14 14
15 #include "base/files/file_path.h" 15 #include "base/files/file_path.h"
16 #include "sync/base/sync_export.h" 16 #include "sync/base/sync_export.h"
17 #include "sync/internal_api/public/engine/model_safe_worker.h" 17 #include "sync/internal_api/public/engine/model_safe_worker.h"
18 18
19 namespace syncer { 19 namespace syncer {
20 20
21 class ExtensionsActivity; 21 class ExtensionsActivity;
22 class ServerConnectionManager; 22 class ServerConnectionManager;
23 class SyncEngineEventListener; 23 class SyncEngineEventListener;
24 class CancelationSignal;
24 class SyncScheduler; 25 class SyncScheduler;
25 class TrafficRecorder; 26 class TrafficRecorder;
26 27
27 namespace sessions { 28 namespace sessions {
28 class DebugInfoGetter; 29 class DebugInfoGetter;
29 class SyncSessionContext; 30 class SyncSessionContext;
30 } 31 }
31 32
32 namespace syncable { 33 namespace syncable {
33 class Directory; 34 class Directory;
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 struct Switches { 69 struct Switches {
69 EncryptionMethod encryption_method; 70 EncryptionMethod encryption_method;
70 BackoffOverride backoff_override; 71 BackoffOverride backoff_override;
71 PreCommitUpdatesPolicy pre_commit_updates_policy; 72 PreCommitUpdatesPolicy pre_commit_updates_policy;
72 }; 73 };
73 74
74 virtual ~InternalComponentsFactory() {} 75 virtual ~InternalComponentsFactory() {}
75 76
76 virtual scoped_ptr<SyncScheduler> BuildScheduler( 77 virtual scoped_ptr<SyncScheduler> BuildScheduler(
77 const std::string& name, 78 const std::string& name,
78 sessions::SyncSessionContext* context) = 0; 79 sessions::SyncSessionContext* context,
80 CancelationSignal* cancelation_signal) = 0;
79 81
80 virtual scoped_ptr<sessions::SyncSessionContext> BuildContext( 82 virtual scoped_ptr<sessions::SyncSessionContext> BuildContext(
81 ServerConnectionManager* connection_manager, 83 ServerConnectionManager* connection_manager,
82 syncable::Directory* directory, 84 syncable::Directory* directory,
83 const std::vector<ModelSafeWorker*>& workers, 85 const std::vector<ModelSafeWorker*>& workers,
84 ExtensionsActivity* extensions_activity, 86 ExtensionsActivity* extensions_activity,
85 const std::vector<SyncEngineEventListener*>& listeners, 87 const std::vector<SyncEngineEventListener*>& listeners,
86 sessions::DebugInfoGetter* debug_info_getter, 88 sessions::DebugInfoGetter* debug_info_getter,
87 TrafficRecorder* traffic_recorder, 89 TrafficRecorder* traffic_recorder,
88 const std::string& invalidator_client_id) = 0; 90 const std::string& invalidator_client_id) = 0;
89 91
90 virtual scoped_ptr<syncable::DirectoryBackingStore> 92 virtual scoped_ptr<syncable::DirectoryBackingStore>
91 BuildDirectoryBackingStore( 93 BuildDirectoryBackingStore(
92 const std::string& dir_name, 94 const std::string& dir_name,
93 const base::FilePath& backing_filepath) = 0; 95 const base::FilePath& backing_filepath) = 0;
94 96
95 // Returns the Switches struct that this object is using as configuration, if 97 // Returns the Switches struct that this object is using as configuration, if
96 // the implementation is making use of one. 98 // the implementation is making use of one.
97 virtual Switches GetSwitches() const = 0; 99 virtual Switches GetSwitches() const = 0;
98 }; 100 };
99 101
100 } // namespace syncer 102 } // namespace syncer
101 103
102 #endif // SYNC_INTERNAL_API_PUBLIC_INTERNAL_COMPONENTS_FACTORY_H_ 104 #endif // SYNC_INTERNAL_API_PUBLIC_INTERNAL_COMPONENTS_FACTORY_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698