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

Side by Side Diff: chrome/browser/sync/glue/session_model_associator.h

Issue 6465005: [Sync] Initial support for encrypting any datatype (no UI hookup yet). (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Comments. Rest of unit tests. Created 9 years, 10 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 (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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_SESSION_MODEL_ASSOCIATOR_H_ 5 #ifndef CHROME_BROWSER_SYNC_GLUE_SESSION_MODEL_ASSOCIATOR_H_
6 #define CHROME_BROWSER_SYNC_GLUE_SESSION_MODEL_ASSOCIATOR_H_ 6 #define CHROME_BROWSER_SYNC_GLUE_SESSION_MODEL_ASSOCIATOR_H_
7 #pragma once 7 #pragma once
8 8
9 #include <map> 9 #include <map>
10 #include <string> 10 #include <string>
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 static const char kSessionsTag[] = "google_chrome_sessions"; 46 static const char kSessionsTag[] = "google_chrome_sessions";
47 47
48 // Contains all logic for associating the Chrome sessions model and 48 // Contains all logic for associating the Chrome sessions model and
49 // the sync sessions model. 49 // the sync sessions model.
50 class SessionModelAssociator 50 class SessionModelAssociator
51 : public PerDataTypeAssociatorInterface<TabContents, size_t>, 51 : public PerDataTypeAssociatorInterface<TabContents, size_t>,
52 public base::NonThreadSafe { 52 public base::NonThreadSafe {
53 public: 53 public:
54 // Does not take ownership of sync_service. 54 // Does not take ownership of sync_service.
55 explicit SessionModelAssociator(ProfileSyncService* sync_service); 55 explicit SessionModelAssociator(ProfileSyncService* sync_service);
56 SessionModelAssociator(ProfileSyncService* sync_service,
57 bool setup_for_test);
56 virtual ~SessionModelAssociator(); 58 virtual ~SessionModelAssociator();
57 59
58 // The has_nodes out parameter is set to true if the sync model has 60 // The has_nodes out parameter is set to true if the sync model has
59 // nodes other than the permanent tagged nodes. The method may 61 // nodes other than the permanent tagged nodes. The method may
60 // return false if an error occurred. 62 // return false if an error occurred.
61 virtual bool SyncModelHasUserCreatedNodes(bool* has_nodes); 63 virtual bool SyncModelHasUserCreatedNodes(bool* has_nodes);
62 64
63 // AssociatorInterface and PerDataTypeAssociator Interface implementation. 65 // AssociatorInterface and PerDataTypeAssociator Interface implementation.
64 virtual void AbortAssociation() { 66 virtual void AbortAssociation() {
65 // No implementation needed, this associator runs on the main thread. 67 // No implementation needed, this associator runs on the main thread.
(...skipping 326 matching lines...) Expand 10 before | Expand all | Expand 10 after
392 TabLinksMap tab_map_; 394 TabLinksMap tab_map_;
393 395
394 ForeignSessionTracker foreign_session_tracker_; 396 ForeignSessionTracker foreign_session_tracker_;
395 397
396 // Weak pointer. 398 // Weak pointer.
397 ProfileSyncService* sync_service_; 399 ProfileSyncService* sync_service_;
398 400
399 // Consumer used to obtain the current session. 401 // Consumer used to obtain the current session.
400 CancelableRequestConsumer consumer_; 402 CancelableRequestConsumer consumer_;
401 403
404 // To avoid certain checks not applicable to tests.
405 bool setup_for_test_;
406
402 DISALLOW_COPY_AND_ASSIGN(SessionModelAssociator); 407 DISALLOW_COPY_AND_ASSIGN(SessionModelAssociator);
403 }; 408 };
404 409
405 } // namespace browser_sync 410 } // namespace browser_sync
406 411
407 #endif // CHROME_BROWSER_SYNC_GLUE_SESSION_MODEL_ASSOCIATOR_H_ 412 #endif // CHROME_BROWSER_SYNC_GLUE_SESSION_MODEL_ASSOCIATOR_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698